| 2362 | } |
| 2363 | |
| 2364 | bool deleteFile(std::string const& filename) { |
| 2365 | INJECT_FAULT(platform_error, "deleteFile"); // file deletion failed |
| 2366 | #ifdef _WIN32 |
| 2367 | if (DeleteFile(filename.c_str())) |
| 2368 | return deletedFile(); |
| 2369 | if (GetLastError() == ERROR_FILE_NOT_FOUND) |
| 2370 | return false; |
| 2371 | #elif defined(__unixish__) |
| 2372 | if (!unlink(filename.c_str())) |
| 2373 | return deletedFile(); |
| 2374 | if (errno == ENOENT) |
| 2375 | return false; |
| 2376 | #else |
| 2377 | #error Port me! |
| 2378 | #endif |
| 2379 | Error e = systemErrorCodeToError(); |
| 2380 | TraceEvent(SevError, "DeleteFile").error(e).detail("Filename", filename).GetLastError(); |
| 2381 | throw e; |
| 2382 | } |
| 2383 | |
| 2384 | static void createdDirectory() { |
| 2385 | INJECT_FAULT(platform_error, "createDirectory"); // create dir (noargs) failed |
no test coverage detected