Author: krasnov
Date: 2006-03-12 08:19:35 -0500 (Sun, 12 Mar 2006)
New Revision: 57863
Modified:
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/TypeStubManager.cs
Log:
* TypeStubManager.cs: fixed type_to_manager member to be initialized per
appdoamin (within TARGET_JVM block)
Modified:
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
===================================================================
--- trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
2006-03-12 12:46:59 UTC (rev 57862)
+++ trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
2006-03-12 13:19:35 UTC (rev 57863)
@@ -1,5 +1,10 @@
2006-03-12 Vladimir Krasnov <[EMAIL PROTECTED]>
+ * TypeStubManager.cs: fixed type_to_manager member to be initialized
+ per appdoamin (within TARGET_JVM block)
+
+2006-03-12 Vladimir Krasnov <[EMAIL PROTECTED]>
+
* SoapDocumentationHandler.cs: TARGET_JVM blocks added to exclude
not supported methods
Modified:
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/TypeStubManager.cs
===================================================================
---
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/TypeStubManager.cs
2006-03-12 12:46:59 UTC (rev 57862)
+++
trunk/mcs/class/System.Web.Services/System.Web.Services.Protocols/TypeStubManager.cs
2006-03-12 13:19:35 UTC (rev 57863)
@@ -372,12 +372,22 @@
#if !TARGET_JVM
static Hashtable type_to_manager;
#else
+ const string type_to_manager_key =
"TypeStubManager.type_to_manager";
static Hashtable type_to_manager {
get {
- return
(Hashtable)AppDomain.CurrentDomain.GetData("TypeStubManager.type_to_manager");
+ Hashtable hash =
(Hashtable)AppDomain.CurrentDomain.GetData(type_to_manager_key);
+
+ if (hash != null)
+ return hash;
+
+ lock(type_to_manager_key) {
+
AppDomain.CurrentDomain.SetData(type_to_manager_key, new Hashtable());
+ }
+
+ return
(Hashtable)AppDomain.CurrentDomain.GetData(type_to_manager_key);
}
set {
-
AppDomain.CurrentDomain.SetData("TypeStubManager.type_to_manager", value);
+ //do nothing: we manage our type_to_manager per
domain
}
}
#endif
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches