]> git.mxchange.org Git - simgear.git/commitdiff
Frederic: this patch to sg_path.cxx will filter out false alarms when directory alrea...
authorehofman <ehofman>
Sun, 18 Dec 2005 09:37:37 +0000 (09:37 +0000)
committerehofman <ehofman>
Sun, 18 Dec 2005 09:37:37 +0000 (09:37 +0000)
simgear/misc/sg_path.cxx

index 4f709d1cd79359cce8120bcc74d0dca7545a978c..a72175ab43e87f60f8c3ac2742ddf126c80d8432 100644 (file)
@@ -221,9 +221,13 @@ void SGPath::create_dir( mode_t mode ) {
     }
 #endif
     struct stat info;
-    for(; stat( dir.c_str(), &info ) == 0 && i < path_elements.size(); i++) {
+    int r;
+    for(; ( r = stat( dir.c_str(), &info ) ) == 0 && i < path_elements.size(); i++) {
         dir.append(path_elements[i]);
     }
+    if ( r == 0 ) {
+        return; // Directory already exists
+    }
     if ( sgMkDir( dir.c_str(), mode) ) {
         SG_LOG( SG_IO, SG_ALERT, "Error creating directory: " + dir.str() );
         return;