[mapguide-commits] r4276 - in trunk/MgDev/Server/src/Services: Feature Kml Mapping

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Wed Sep 30 18:59:49 EDT 2009


Author: brucedechant
Date: 2009-09-30 18:59:49 -0400 (Wed, 30 Sep 2009)
New Revision: 4276

Modified:
   trunk/MgDev/Server/src/Services/Feature/TransformCache.cpp
   trunk/MgDev/Server/src/Services/Kml/ServerKmlService.cpp
   trunk/MgDev/Server/src/Services/Mapping/MappingUtil.cpp
Log:
Fix for trac ticket 1107 - Spatial context reader not being closed
http://trac.osgeo.org/mapguide/ticket/1107

Notes:
- Added missing Close()


Modified: trunk/MgDev/Server/src/Services/Feature/TransformCache.cpp
===================================================================
--- trunk/MgDev/Server/src/Services/Feature/TransformCache.cpp	2009-09-30 21:51:48 UTC (rev 4275)
+++ trunk/MgDev/Server/src/Services/Feature/TransformCache.cpp	2009-09-30 22:59:49 UTC (rev 4276)
@@ -125,7 +125,7 @@
         STRING csrName = L"";
         bool bHaveFirstSpatialContext = false;
 
-        while(csrdr->ReadNext())
+        while(csrdr.p != NULL && csrdr->ReadNext())
         {
             csrName = csrdr->GetName();
             if((!spatialContextAssociation.empty()) && (csrName == spatialContextAssociation))
@@ -142,6 +142,8 @@
                 bHaveFirstSpatialContext = true;
             }
         }
+        if(csrdr.p != NULL)
+            csrdr->Close();
 
         // Create coordinate system transformer
         if (!srcwkt.empty())

Modified: trunk/MgDev/Server/src/Services/Kml/ServerKmlService.cpp
===================================================================
--- trunk/MgDev/Server/src/Services/Kml/ServerKmlService.cpp	2009-09-30 21:51:48 UTC (rev 4275)
+++ trunk/MgDev/Server/src/Services/Kml/ServerKmlService.cpp	2009-09-30 22:59:49 UTC (rev 4276)
@@ -581,6 +581,7 @@
                         }
                     }
                 }
+                scReader->Close();
             }
         }
         else if(dl != NULL)
@@ -784,6 +785,7 @@
             STRING layerCoordSysWkt = scReader->GetCoordinateSystemWkt();
             layerCs = (layerCoordSysWkt.empty()) ? NULL : m_csFactory->Create(layerCoordSysWkt);
         }
+        scReader->Close();
     }
     return SAFE_ADDREF(layerCs.p);
 }
@@ -864,9 +866,3 @@
     }
     return sessionId;
 }
-
-
-
-
-
-

Modified: trunk/MgDev/Server/src/Services/Mapping/MappingUtil.cpp
===================================================================
--- trunk/MgDev/Server/src/Services/Mapping/MappingUtil.cpp	2009-09-30 21:51:48 UTC (rev 4275)
+++ trunk/MgDev/Server/src/Services/Mapping/MappingUtil.cpp	2009-09-30 22:59:49 UTC (rev 4276)
@@ -688,6 +688,9 @@
                             break;
                         }
                     }
+                    if(contextReader.p != NULL)
+                        contextReader->Close();
+
                     MG_CATCH_AND_RELEASE()
 
                     #ifdef _DEBUG



More information about the mapguide-commits mailing list