]> git.mxchange.org Git - flightgear.git/blobdiff - utils/TerraSync/terrasync.cxx
Merge branch 'maint' into next
[flightgear.git] / utils / TerraSync / terrasync.cxx
index 70ebf87aa6c5ce9862704a714630060821953b6a..53520822a60aea9f7ae9952114b89c01b3e6761a 100644 (file)
@@ -110,6 +110,9 @@ int mysvn_setup(void) {
     if (mysvn_pool) return EXIT_SUCCESS;
     // No, so initialize svn internals generally
 #ifdef _MSC_VER
+    // there is a segfault when providing an error stream.
+    //  Apparently, calling setvbuf with a nul buffer is
+    //  not supported under msvc 7.1 ( code inside svn_cmdline_init )
     if (svn_cmdline_init("terrasync", 0) != EXIT_SUCCESS)
         return EXIT_FAILURE;
 #else
@@ -290,6 +293,8 @@ static void parse_message( const string &msg, int *lat, int *lon ) {
 
 // sync area
 static void sync_area( int lat, int lon ) {
+    if ( lat < -90 || lat > 90 || lon < -180 || lon > 180 )
+        return;
     char NS, EW;
     int baselat, baselon;
 
@@ -314,9 +319,9 @@ static void sync_area( int lat, int lon ) {
         }
         EW = 'w';
     } else {
-            baselon = (int)(lon / 10) * 10;
-            EW = 'e';
-        }
+        baselon = (int)(lon / 10) * 10;
+        EW = 'e';
+    }
     
     const char* terrainobjects[3] = { "Terrain", "Objects", 0 };
     const char** tree;
@@ -324,10 +329,10 @@ static void sync_area( int lat, int lon ) {
   
     for (tree = &terrainobjects[0]; *tree; tree++) {
         snprintf( dir, 512, "%s/%c%03d%c%02d/%c%03d%c%02d",
-             *tree,
-             EW, abs(baselon), NS, abs(baselat),
-             EW, abs(lon), NS, abs(lat) );
-       sync_tree(dir);
+          *tree,
+              EW, abs(baselon), NS, abs(baselat),
+              EW, abs(lon), NS, abs(lat) );
+        sync_tree(dir);
     }
 }