Re: [PATCH 0/2] recover from "failed to apply delta"
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 14, 2013, 22:23 UTC
- Message-ID
- <7vbo78miwb.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <20130614215618.GB29138@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 9 quoted lines
>> + # At the beginning of the REF_DELTA representation of $blob_3,
>> + # write 20-byte base object name for $blob_1, instead of $blob_2.
>> + # The binary representation of object name for $blob_1 is found
>> + # at offset 4 + 4 + 256*4 = 1032 for 20 bytes.
>> + dd if=${pack}.idx bs=1 count=20 skip=1032 | do_corrupt_object $blob_3 2 20 &&
>> + test_must_fail git cat-file blob $blob_3 >/dev/null &&
>
> I didn't want to bother coming up with the binary version of the
> REF_DELTA sha1, so I used OFS_DELTA. :)Yeah, I contemplated on doing something like this
printf "$(echo $blob_3 | sed -e 's/\(..\)/\\x\1/g')"
but of course printf "\xAA" is not in POSIX and at that point I punted and instead read from .idx at the known offset ;-)