X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=cleanup.go;h=09a72203ad2be8bcb29162128fcfe8fc9be78dc3;hb=19b13ea1334d377dd9c6a36ea70c9141b8fd447d;hp=e00e3ff299842929f37ea8a5129abe82d36b68ea;hpb=0d0e69d21056fe2c199beb7e7ce82572ae688825;p=goredo.git diff --git a/cleanup.go b/cleanup.go index e00e3ff..09a7220 100644 --- a/cleanup.go +++ b/cleanup.go @@ -32,6 +32,7 @@ const ( CleanupFull = "full" CleanupLog = "log" CleanupTmp = "tmp" + CleanupLock = "lock" ) var DryRun *bool @@ -52,6 +53,7 @@ func redoDirClean(root, what string) error { if err != nil { return err } + defer dir.Close() for { fis, err := dir.Readdir(1 << 10) if err != nil { @@ -74,6 +76,15 @@ func redoDirClean(root, what string) error { } } } + case CleanupLock: + if strings.HasSuffix(fi.Name(), LockSuffix) { + fmt.Println(pth) + if !*DryRun { + if err = os.Remove(pth); err != nil { + return err + } + } + } case CleanupTmp: if strings.HasPrefix(fi.Name(), TmpPrefix) { fmt.Println(pth) @@ -88,7 +99,7 @@ func redoDirClean(root, what string) error { } } } - return dir.Close() + return nil } func cleanupWalker(root, what string) error { @@ -147,5 +158,5 @@ func cleanupWalker(root, what string) error { } } } - return dir.Close() + return nil }