diff --git a/mmv.go b/mmv.go index 28140ff..d5fc829 100644 --- a/mmv.go +++ b/mmv.go @@ -27,14 +27,15 @@ func doRename(src, dst string) (err error) { if err = os.Rename(src, dst); err != nil && os.IsNotExist(err) { // check the source file existence to exit without creating the destination // directory when the both source file and destination directory do not exist - if _, err := os.Stat(src); err == nil { - // create the destination directory - if err := os.MkdirAll(filepath.Dir(dst), 0755); err != nil { - return err - } - // try renaming again - return os.Rename(src, dst) + if _, err := os.Stat(src); err != nil { + return err } + // create the destination directory + if err := os.MkdirAll(filepath.Dir(dst), 0755); err != nil { + return err + } + // try renaming again + return os.Rename(src, dst) } return }