Commit Diff


commit - 6048158fc378dddeded29923f96cb5858c1cb71d
commit + b4065bfcafb3421d29197dff9ffcd55ee58fa831
blob - a4a1392d2f43c778cb84a823427774c092088fa8
blob + 09136af9ef6031bc1ba4935ddaba53108806ba54
--- lib/pack.c
+++ lib/pack.c
@@ -1493,6 +1493,24 @@ got_pack_dump_delta_chain_to_file(size_t *result_size,
 			n++;
 			if (base_buf == NULL)
 				rewind(base_file);
+			else if (pack->delta_cache && fulltext == NULL) {
+				err = got_delta_cache_add(pack->delta_cache,
+				    delta_data_offset, NULL, 0);
+				if (err) {
+					if (err->code != GOT_ERR_NO_SPACE)
+						goto done;
+					err = NULL;
+				} else {
+					err = got_delta_cache_add_fulltext(
+					    pack->delta_cache,
+					    delta_data_offset,
+					    base_buf, base_bufsz);
+					if (err &&
+					    err->code != GOT_ERR_NO_SPACE)
+						goto done;
+					err = NULL;
+				}
+			}
 			continue;
 		}