bash prompt: mention that PROMPT_COMMAND mode is faster
[gitweb.git] / sha1_file.c
index 7fa62c2d9345c0e42c08684866de95176e6acea0..0af19c00f19b56b23bd7d4ad0f27fdd45cd06d90 100644 (file)
@@ -2145,10 +2145,19 @@ void *unpack_entry(struct packed_git *p, off_t obj_offset,
                data = patch_delta(base, base_size,
                                   delta_data, delta_size,
                                   &size);
+
+               /*
+                * We could not apply the delta; warn the user, but keep going.
+                * Our failure will be noticed either in the next iteration of
+                * the loop, or if this is the final delta, in the caller when
+                * we return NULL. Those code paths will take care of making
+                * a more explicit warning and retrying with another copy of
+                * the object.
+                */
                if (!data)
-                       die("failed to apply delta");
+                       error("failed to apply delta");
 
-               free (delta_data);
+               free(delta_data);
        }
 
        *final_type = type;
@@ -2358,7 +2367,7 @@ static int sha1_loose_object_info(const unsigned char *sha1, unsigned long *size
 
        map = map_sha1_file(sha1, &mapsize);
        if (!map)
-               return error("unable to find %s", sha1_to_hex(sha1));
+               return -1;
        if (unpack_sha1_header(&stream, map, mapsize, hdr, sizeof(hdr)) < 0)
                status = error("unable to unpack %s header",
                               sha1_to_hex(sha1));