1
1
Fork 0
mirror of https://github.com/schollz/croc.git synced 2025-10-11 05:11:06 +02:00
This commit is contained in:
Zack Scholl 2019-04-11 09:51:34 -07:00
parent 63b3e49dfa
commit 1868531ee7

View file

@ -132,26 +132,31 @@ func (s *Session) receiveData(pathToFile string, fileSize int64) error {
log.Debugf("receiving %s", pathToFile)
// truncate if nessecary
stat, errStat := os.Stat(pathToFile)
if errStat == nil {
var f *os.File
var errOpen error
f, errOpen = os.OpenFile(pathToFile, os.O_WRONLY, 0666)
if errOpen == nil {
stat, _ := f.Stat()
if stat.Size() != fileSize {
err := os.Truncate(pathToFile, fileSize)
err := f.Truncate(fileSize)
if err != nil {
log.Error(err)
return err
}
}
} else {
os.Create(pathToFile)
err := os.Truncate(pathToFile, fileSize)
f, err := os.Create(pathToFile)
if err != nil {
log.Error(err)
return err
}
err = f.Truncate(fileSize)
if err != nil {
log.Error(err)
return err
}
}
f, err := os.Open(pathToFile)
if err != nil {
return err
}
defer func() {
log.Debugln("Stopped receiving data...")
f.Close()