Skip to content

Commit 828e193

Browse files
johan-lejdungphpdave11
authored andcommitted
fix: setting sourceFile on the reader when importing streams
fixes a bug where it wasn't possible to import from more than one stream at a time
1 parent 1f10f98 commit 828e193

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

importer.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ func (this *Importer) SetSourceStream(rs *io.ReadSeeker) {
9090
this.sourceFile = fmt.Sprintf("%v", rs)
9191

9292
if _, ok := this.readers[this.sourceFile]; !ok {
93-
reader, err := NewPdfReaderFromStream(*rs)
93+
reader, err := NewPdfReaderFromStream(this.sourceFile, *rs)
9494
if err != nil {
9595
panic(err)
9696
}

reader.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@ import (
66
"compress/zlib"
77
"encoding/binary"
88
"fmt"
9-
"github.com/pkg/errors"
109
"io"
1110
"io/ioutil"
1211
"math"
1312
"os"
1413
"strconv"
14+
15+
"github.com/pkg/errors"
1516
)
1617

1718
type PdfReader struct {
@@ -31,12 +32,12 @@ type PdfReader struct {
3132
pageCount int
3233
}
3334

34-
func NewPdfReaderFromStream(rs io.ReadSeeker) (*PdfReader, error) {
35+
func NewPdfReaderFromStream(sourceFile string, rs io.ReadSeeker) (*PdfReader, error) {
3536
length, err := rs.Seek(0, 2)
3637
if err != nil {
3738
return nil, errors.Wrapf(err, "Failed to determine stream length")
3839
}
39-
parser := &PdfReader{f: rs, nBytes: length}
40+
parser := &PdfReader{f: rs, sourceFile: sourceFile, nBytes: length}
4041
if err := parser.init(); err != nil {
4142
return nil, errors.Wrap(err, "Failed to initialize parser")
4243
}

0 commit comments

Comments
 (0)