run.go | 11 ----------- tmp.go | 37 +++++++++++++++++++++++++++++++++++++ diff --git a/run.go b/run.go index 32c28f3deadb87a37aed0081bbf3e0cc1585b982e02b16688151c7b220890627..065aadc8f5cb3c0e906eb13d797dc9c6a7729098d4e1e62146a69019447021f5 100644 --- a/run.go +++ b/run.go @@ -29,7 +29,6 @@ "io" "os" "os/exec" "path" - "strconv" "strings" "sync" "syscall" @@ -100,16 +99,6 @@ if _, err := os.Stat(pth); err == nil { return nil } return os.MkdirAll(pth, os.FileMode(0777)) -} - -func tempsuffix() string { - return strconv.FormatInt((time.Now().UnixNano()+int64(os.Getpid()))&0xFFFFFFFF, 16) -} - -func tempfile(dir, prefix string) (*os.File, error) { - // It respects umask, unlike ioutil.TempFile - name := path.Join(dir, TmpPrefix+prefix+"."+tempsuffix()) - return os.OpenFile(name, os.O_RDWR|os.O_CREATE|os.O_EXCL, os.FileMode(0666)) } func isModified(cwd, redoDir, tgt string) (bool, string, error) { diff --git a/tmp.go b/tmp.go new file mode 100644 index 0000000000000000000000000000000000000000..4d13c3d63c6df4a5f85dddafb5b5d70c8e80820ec813bfd4c02002fc319abaea --- /dev/null +++ b/tmp.go @@ -0,0 +1,37 @@ +/* +goredo -- redo implementation on pure Go +Copyright (C) 2020 Sergey Matveev + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 3 of the License. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +// Temporary files + +package main + +import ( + "os" + "path" + "strconv" + "time" +) + +func tempsuffix() string { + return strconv.FormatInt((time.Now().UnixNano()+int64(os.Getpid()))&0xFFFFFFFF, 16) +} + +func tempfile(dir, prefix string) (*os.File, error) { + // It respects umask, unlike ioutil.TempFile + name := path.Join(dir, TmpPrefix+prefix+"."+tempsuffix()) + return os.OpenFile(name, os.O_RDWR|os.O_CREATE|os.O_EXCL, os.FileMode(0666)) +}