Index: gt_wkt_srs.cpp
===================================================================
--- gt_wkt_srs.cpp	(revision 21823)
+++ gt_wkt_srs.cpp	(working copy)
@@ -88,6 +88,8 @@
 void CPL_DLL *CPLCalloc( size_t, size_t );
 #undef CPLStrdup
 char CPL_DLL *CPLStrdup( const char * );
+#undef CPLAtof
+double CPLAtof( const char * );
 
 #endif /* CPL_SERV_H_INTERNAL */
 
@@ -252,7 +254,6 @@
 
 {
     OGRSpatialReference	oSRS;
-    CPLLocaleC  oLocaleForcer;
 
 /* -------------------------------------------------------------------- */
 /*  Handle non-standard coordinate systems where GTModelTypeGeoKey      */
@@ -875,10 +876,10 @@
 
             // Value
             double dfFactorB, dfFactorC;
-            dfFactorB = atof(CSVGetField( pszFilename, 
+            dfFactorB = CPLAtof(CSVGetField( pszFilename, 
                                           "uom_code", szSearchKey, CC_Integer,
                                           "factor_b" ));
-            dfFactorC = atof(CSVGetField( pszFilename, 
+            dfFactorC = CPLAtof(CSVGetField( pszFilename, 
                                           "uom_code", szSearchKey, CC_Integer,
                                           "factor_b" ));
             if( dfFactorB != 0.0 && dfFactorC != 0.0 )
@@ -1000,7 +1001,6 @@
     int		nPCS = KvUserDefined;
     OGRErr      eErr;
     OGRBoolean peStrStored = FALSE;    
-    CPLLocaleC  oLocaleForcer;
 
     GTIFKeySet(psGTIF, GTRasterTypeGeoKey, TYPE_SHORT, 1,
                RasterPixelIsArea);
@@ -1082,11 +1082,11 @@
 
     if( (pszLinearUOMName != NULL
          && EQUAL(pszLinearUOMName,SRS_UL_FOOT))
-        || dfLinearUOM == atof(SRS_UL_FOOT_CONV) )
+        || dfLinearUOM == CPLAtof(SRS_UL_FOOT_CONV) )
         nUOMLengthCode = 9002; /* international foot */
     else if( (pszLinearUOMName != NULL
               && EQUAL(pszLinearUOMName,SRS_UL_US_FOOT))
-             || ABS(dfLinearUOM-atof(SRS_UL_US_FOOT_CONV)) < 0.0000001 )
+             || ABS(dfLinearUOM - CPLAtof(SRS_UL_US_FOOT_CONV)) < 0.0000001 )
         nUOMLengthCode = 9003; /* us survey foot */
     else if( dfLinearUOM != 1.0 )
         nUOMLengthCode = KvUserDefined;
@@ -2048,7 +2048,6 @@
     GTIF 	*hGTIF;
     GTIFDefn	sGTIFDefn;
     char        szFilename[100];
-    CPLLocaleC  oLocaleForcer;
 
     sprintf( szFilename, "/vsimem/wkt_from_mem_buf_%ld.tif", 
              (long) CPLGetPID() );
@@ -2177,7 +2176,6 @@
     TIFF        *hTIFF;
     GTIF 	*hGTIF;
     char        szFilename[100];
-    CPLLocaleC  oLocaleForcer;
 
     sprintf( szFilename, "/vsimem/wkt_from_mem_buf_%ld.tif", 
              (long) CPLGetPID() );
