mirror of
https://github.com/ipfs/kubo.git
synced 2025-08-06 11:31:54 +08:00
Create a FilestoreNode object to carry PosInfo
When doing a filestore add, we wrap whatever nodes we create in a FilestoreNode object and add the PosInfo to it so that the filestore will be able to extract information as needed. Edited by whyrusleeping License: MIT Signed-off-by: Kevin Atkinson <k@kevina.org>
This commit is contained in:
@ -398,7 +398,12 @@ func (adder *Adder) addFile(file files.File) error {
|
||||
// progress updates to the client (over the output channel)
|
||||
var reader io.Reader = file
|
||||
if adder.Progress {
|
||||
reader = &progressReader{file: file, out: adder.Out}
|
||||
rdr := &progressReader{file: file, out: adder.Out}
|
||||
if fi, ok := file.(files.FileInfo); ok {
|
||||
reader = &progressReader2{rdr, fi}
|
||||
} else {
|
||||
reader = rdr
|
||||
}
|
||||
}
|
||||
|
||||
dagnode, err := adder.add(reader)
|
||||
@ -520,3 +525,8 @@ func (i *progressReader) Read(p []byte) (int, error) {
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
type progressReader2 struct {
|
||||
*progressReader
|
||||
files.FileInfo
|
||||
}
|
||||
|
Reference in New Issue
Block a user