kopia lustrzana https://github.com/jcs/id3-go
Move file end check to helper method
rodzic
5e29803875
commit
9163b6c404
12
id3.go
12
id3.go
|
@ -73,16 +73,10 @@ func (f *File) Close() error {
|
||||||
}
|
}
|
||||||
case (*v2.Tag):
|
case (*v2.Tag):
|
||||||
if f.Size() > f.originalSize {
|
if f.Size() > f.originalSize {
|
||||||
stat, err := f.file.Stat()
|
start := int64(f.originalSize + v2.HeaderSize)
|
||||||
if err != nil {
|
offset := int64(f.Tagger.Size() - f.originalSize)
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
start := f.originalSize + v2.HeaderSize
|
if err := shiftBytesBack(f.file, start, offset); err != nil {
|
||||||
end := stat.Size()
|
|
||||||
offset := f.Tagger.Size() - f.originalSize
|
|
||||||
|
|
||||||
if err := shiftBytesBack(f.file, int64(start), end, int64(offset)); err != nil {
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
8
util.go
8
util.go
|
@ -8,7 +8,13 @@ import (
|
||||||
"os"
|
"os"
|
||||||
)
|
)
|
||||||
|
|
||||||
func shiftBytesBack(file *os.File, start, end, offset int64) error {
|
func shiftBytesBack(file *os.File, start, offset int64) error {
|
||||||
|
stat, err := file.Stat()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
end := stat.Size()
|
||||||
|
|
||||||
wrBuf := make([]byte, offset)
|
wrBuf := make([]byte, offset)
|
||||||
rdBuf := make([]byte, offset)
|
rdBuf := make([]byte, offset)
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue