[mapserver-commits] r10441 - in branches/branch-5-6/mapserver: . mapscript/csharp

svn at osgeo.org svn at osgeo.org
Thu Aug 5 07:43:30 EDT 2010


Author: tamas
Date: 2010-08-05 11:43:30 +0000 (Thu, 05 Aug 2010)
New Revision: 10441

Modified:
   branches/branch-5-6/mapserver/HISTORY.TXT
   branches/branch-5-6/mapserver/mapscript/csharp/Makefile.vc
   branches/branch-5-6/mapserver/mapscript/csharp/swig_csharp_extensions.i
Log:
Ensure the class is not marked BeforeFieldInit causing memory corruption with C#/CLR4 (#3438)

Modified: branches/branch-5-6/mapserver/HISTORY.TXT
===================================================================
--- branches/branch-5-6/mapserver/HISTORY.TXT	2010-08-05 11:40:48 UTC (rev 10440)
+++ branches/branch-5-6/mapserver/HISTORY.TXT	2010-08-05 11:43:30 UTC (rev 10441)
@@ -13,6 +13,8 @@
 
 Current Version
 ---------------
+- Ensure the class is not marked BeforeFieldInit causing memory corruption with C#/CLR4 (#3438)
+
 - Fixed MSSQL2008 driver returning invalid extent (#3498)
 
 - Fix computation of shape bounds when the first line contains no points

Modified: branches/branch-5-6/mapserver/mapscript/csharp/Makefile.vc
===================================================================
--- branches/branch-5-6/mapserver/mapscript/csharp/Makefile.vc	2010-08-05 11:40:48 UTC (rev 10440)
+++ branches/branch-5-6/mapserver/mapscript/csharp/Makefile.vc	2010-08-05 11:43:30 UTC (rev 10441)
@@ -48,7 +48,7 @@
 !ENDIF
 
 !IF $(MSVC_VER) >= 1600
-CSC = $(CSC) /define:CLR4 /debug:full
+CSC = $(CSC) /define:CLR4
 !ENDIF
 
 #SWIG = swig

Modified: branches/branch-5-6/mapserver/mapscript/csharp/swig_csharp_extensions.i
===================================================================
--- branches/branch-5-6/mapserver/mapscript/csharp/swig_csharp_extensions.i	2010-08-05 11:40:48 UTC (rev 10440)
+++ branches/branch-5-6/mapserver/mapscript/csharp/swig_csharp_extensions.i	2010-08-05 11:43:30 UTC (rev 10441)
@@ -29,6 +29,12 @@
  * DEALINGS IN THE SOFTWARE.
  *****************************************************************************/
 
+// Ensure the class is not marked BeforeFieldInit causing memory corruption with CLR4 
+%pragma(csharp) imclasscode=%{
+  static $imclassname() {
+  }
+%}
+
 %typemap(csout, excode=SWIGEXCODE) SWIGTYPE {
     $&csclassname ret = new $&csclassname($imcall, true, null);$excode
     return ret;



More information about the mapserver-commits mailing list