diff --git a/image_reader.go b/image_reader.go index 32227a1..01613fd 100644 --- a/image_reader.go +++ b/image_reader.go @@ -179,7 +179,7 @@ func (f *File) GetAllChildren() ([]*File, error) { buffer := make([]byte, sectorSize) for bytesProcessed := uint32(0); bytesProcessed < uint32(f.de.ExtentLength); bytesProcessed += sectorSize { if _, err := f.ra.ReadAt(buffer, int64(baseOffset+bytesProcessed)); err != nil { - return nil, nil + return nil, err } for i := uint32(0); i < sectorSize; { @@ -239,6 +239,9 @@ func (f *File) GetAllChildren() ([]*File, error) { f.children = append(f.children, newFile) } } + if f.children == nil { + return nil, fmt.Errorf("no children found") + } return f.children, nil }