aboutsummaryrefslogtreecommitdiffstats
path: root/plumbing/format/packfile/decoder.go
diff options
context:
space:
mode:
authorAntonio Jesus Navarro Perez <antonio@sourced.tech>2017-02-07 16:02:46 +0100
committerAntonio Jesus Navarro Perez <antonio@sourced.tech>2017-02-07 16:02:46 +0100
commitb872b71112ed4034bbd9c33a0babd6353b582429 (patch)
treec77297e16413c308ab8fbb27e8d86f72fffe786a /plumbing/format/packfile/decoder.go
parent8d45daf52a46b8b2cd496c9e885a1ac6d78007e3 (diff)
downloadgo-git-b872b71112ed4034bbd9c33a0babd6353b582429.tar.gz
Fix missing objects if they where deltified using ref-delta
- Deleted invalid logic that returned nil if an ref-delta was not found into the decoder index. This logic was missing objects if it was deltified using ref-deltas. - Now, to avoid that problem, index is mandatory to decode correctly a packfile of a specific type. Decoder.SetOffsets method now is called into the EncodedObjectIterator to avoid this problem.
Diffstat (limited to 'plumbing/format/packfile/decoder.go')
-rw-r--r--plumbing/format/packfile/decoder.go7
1 files changed, 0 insertions, 7 deletions
diff --git a/plumbing/format/packfile/decoder.go b/plumbing/format/packfile/decoder.go
index 9f2174b..475d24d 100644
--- a/plumbing/format/packfile/decoder.go
+++ b/plumbing/format/packfile/decoder.go
@@ -225,13 +225,6 @@ func (d *Decoder) decodeIfSpecificType(h *ObjectHeader) (plumbing.EncodedObject,
realType, err = d.ofsDeltaType(h.OffsetReference)
case plumbing.REFDeltaObject:
realType, err = d.refDeltaType(h.Reference)
-
- // If a reference delta is not found, it means that it isn't of
- // the type we are looking for, because we don't have any reference
- // and it is not present into the object storer
- if err == plumbing.ErrObjectNotFound {
- return nil, nil
- }
default:
realType = h.Type
}