aboutsummaryrefslogtreecommitdiffstats
path: root/storage/filesystem/dotgit/reader.go
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2021-06-02 10:03:28 +0100
committerGitHub <noreply@github.com>2021-06-02 11:03:28 +0200
commitda810275bf682d29a530ed819aff175f47bd7634 (patch)
tree615e4c2b301532a211e739143b28df313b110dfb /storage/filesystem/dotgit/reader.go
parentdb4233e9e8b3b2e37259ed4e7952faaed16218b9 (diff)
downloadgo-git-da810275bf682d29a530ed819aff175f47bd7634.tar.gz
Revert "plumbing: format/packfile, prevent large objects from being read into memory completely (#303)" (#329)v5.4.2
This reverts commit 720c192831a890d0a36b4c6720b60411fa4a0159.
Diffstat (limited to 'storage/filesystem/dotgit/reader.go')
-rw-r--r--storage/filesystem/dotgit/reader.go79
1 files changed, 0 insertions, 79 deletions
diff --git a/storage/filesystem/dotgit/reader.go b/storage/filesystem/dotgit/reader.go
deleted file mode 100644
index a82ac94..0000000
--- a/storage/filesystem/dotgit/reader.go
+++ /dev/null
@@ -1,79 +0,0 @@
-package dotgit
-
-import (
- "fmt"
- "io"
- "os"
-
- "github.com/go-git/go-git/v5/plumbing"
- "github.com/go-git/go-git/v5/plumbing/format/objfile"
- "github.com/go-git/go-git/v5/utils/ioutil"
-)
-
-var _ (plumbing.EncodedObject) = &EncodedObject{}
-
-type EncodedObject struct {
- dir *DotGit
- h plumbing.Hash
- t plumbing.ObjectType
- sz int64
-}
-
-func (e *EncodedObject) Hash() plumbing.Hash {
- return e.h
-}
-
-func (e *EncodedObject) Reader() (io.ReadCloser, error) {
- f, err := e.dir.Object(e.h)
- if err != nil {
- if os.IsNotExist(err) {
- return nil, plumbing.ErrObjectNotFound
- }
-
- return nil, err
- }
- r, err := objfile.NewReader(f)
- if err != nil {
- return nil, err
- }
-
- t, size, err := r.Header()
- if err != nil {
- _ = r.Close()
- return nil, err
- }
- if t != e.t {
- _ = r.Close()
- return nil, objfile.ErrHeader
- }
- if size != e.sz {
- _ = r.Close()
- return nil, objfile.ErrHeader
- }
- return ioutil.NewReadCloserWithCloser(r, f.Close), nil
-}
-
-func (e *EncodedObject) SetType(plumbing.ObjectType) {}
-
-func (e *EncodedObject) Type() plumbing.ObjectType {
- return e.t
-}
-
-func (e *EncodedObject) Size() int64 {
- return e.sz
-}
-
-func (e *EncodedObject) SetSize(int64) {}
-
-func (e *EncodedObject) Writer() (io.WriteCloser, error) {
- return nil, fmt.Errorf("Not supported")
-}
-
-func NewEncodedObject(dir *DotGit, h plumbing.Hash, t plumbing.ObjectType, size int64) *EncodedObject {
- return &EncodedObject{
- dir: dir,
- h: h,
- t: t,
- sz: size,
- }
-}