+ /* Ensure all necessary directories exist for each type of backup file. */
+ for (size_t i = 0; backup_directories[i]; i++) {
+ string path = stagedir + "/" + backup_directories[i];
+ if (mkdir(path.c_str(), 0777) < 0) {
+ /* Ignore errors for already-existing directories. */
+ if (errno != EEXIST) {
+ fprintf(stderr,
+ "Warning: Cannot create backup directory %s: %m!",
+ path.c_str());
+ }
+ }
+ }
+