(dirName string, cacheKey string, perm os.FileMode, dirDesc string)
| 251 | } |
| 252 | |
| 253 | func CacheEnsureDir(dirName string, cacheKey string, perm os.FileMode, dirDesc string) error { |
| 254 | baseLock.Lock() |
| 255 | ok := ensureDirCache[cacheKey] |
| 256 | baseLock.Unlock() |
| 257 | if ok { |
| 258 | return nil |
| 259 | } |
| 260 | err := TryMkdirs(dirName, perm, dirDesc) |
| 261 | if err != nil { |
| 262 | return err |
| 263 | } |
| 264 | baseLock.Lock() |
| 265 | ensureDirCache[cacheKey] = true |
| 266 | baseLock.Unlock() |
| 267 | return nil |
| 268 | } |
| 269 | |
| 270 | func TryMkdirs(dirName string, perm os.FileMode, dirDesc string) error { |
| 271 | info, err := os.Stat(dirName) |
no test coverage detected