[prev in list] [next in list] [prev in thread] [next in thread]
List: mono-patches
Subject: [Mono-patches] r70271 - trunk/mcs/class/corlib/System.Resources
From: "Alexander Olk (xenomorph2 () onlinehome ! de)"
Date: 2006-12-30 21:51:31
Message-ID: 20061230215131.1FDF29472C () mono-cvs ! ximian ! com
[Download RAW message or body]
Author: aolk
Date: 2006-12-30 16:51:30 -0500 (Sat, 30 Dec 2006)
New Revision: 70271
Modified:
trunk/mcs/class/corlib/System.Resources/ChangeLog
trunk/mcs/class/corlib/System.Resources/ResourceManager.cs
trunk/mcs/class/corlib/System.Resources/ResourceSet.cs
Log:
* ResourceManager.cs: Don't create the ResourceSets hashtable in the
protected ctor, instead move it to the public ctors. Fixes some not
working nunit tests. Also, return a closed ResourceSet instead of
creating a new one. Fixes one more test. If only BaseNameField is
provided, try to create a resource set from the BaseNameField. One
more test that passes now.
* ResourceSet.cs: Remove isDisposed. Not needed anymore.
2006-12-30 Alexander Olk <alex.olk@googlemail.com>
Modified: trunk/mcs/class/corlib/System.Resources/ChangeLog
===================================================================
--- trunk/mcs/class/corlib/System.Resources/ChangeLog 2006-12-30 21:29:14 UTC (rev 70270)
+++ trunk/mcs/class/corlib/System.Resources/ChangeLog 2006-12-30 21:51:30 UTC (rev 70271)
@@ -1,5 +1,15 @@
2006-12-30 Alexander Olk <alex.olk@googlemail.com>
+ * ResourceManager.cs: Don't create the ResourceSets hashtable in the
+ protected ctor, instead move it to the public ctors. Fixes some not
+ working nunit tests. Also, return a closed ResourceSet instead of
+ creating a new one. Fixes one more test. If only BaseNameField is
+ provided, try to create a resource set from the BaseNameField. One
+ more test that passes now.
+ * ResourceSet.cs: Remove isDisposed. Not needed anymore.
+
+2006-12-30 Alexander Olk <alex.olk@googlemail.com>
+
* ResourceManager.cs: Iterate through the values of the ResourceSets
hashtable in ReleaseAllResources instead through the hashtable itself.
Modified: trunk/mcs/class/corlib/System.Resources/ResourceManager.cs
===================================================================
--- trunk/mcs/class/corlib/System.Resources/ResourceManager.cs 2006-12-30 21:29:14 UTC (rev 70270)
+++ trunk/mcs/class/corlib/System.Resources/ResourceManager.cs 2006-12-30 21:51:30 UTC (rev 70271)
@@ -4,6 +4,7 @@
// Authors:
// Duncan Mak (duncan@ximian.com)
// Dick Porter (dick@ximian.com)
+// Alexander Olk (alex.olk@googlemail.com)
//
// (C) 2001, 2002 Ximian, Inc. http://www.ximian.com
//
@@ -58,7 +59,6 @@
// constructors
protected ResourceManager () {
- ResourceSets=new Hashtable();
ignoreCase=false;
resourceSetType=typeof(ResourceSet);
resourceDir=null;
@@ -70,6 +70,7 @@
if (resourceSource == null)
throw new ArgumentNullException ("resourceSource is null.");
+ ResourceSets = new Hashtable();
BaseNameField = resourceSource.FullName;
MainAssembly = resourceSource.Assembly;
@@ -85,6 +86,7 @@
if(assembly == null)
throw new ArgumentNullException ("assembly is null.");
+ ResourceSets = new Hashtable ();
BaseNameField = baseName;
MainAssembly = assembly;
neutral_culture = GetNeutralResourcesLanguage(MainAssembly);
@@ -109,6 +111,7 @@
if(assembly == null)
throw new ArgumentNullException ("assembly is null.");
+ ResourceSets = new Hashtable ();
BaseNameField = baseName;
MainAssembly = assembly;
resourceSetType = CheckResourceSetType(usingResourceSet);
@@ -128,6 +131,7 @@
throw new ArgumentNullException("The resourceDir is null");
}
+ ResourceSets = new Hashtable ();
BaseNameField = baseName;
MainAssembly = null;
resourceSetType = CheckResourceSetType(usingResourceSet);
@@ -289,13 +293,9 @@
throw new MissingManifestResourceException (msg);
}
/* if we already have this resource set, return it */
- set=(ResourceSet)ResourceSets[culture];
- if(set!=null && !set.isDisposed) {
- return(set);
- } else if (set!=null && set.isDisposed) {
- ResourceSets.Remove (set);
- set = null;
- }
+ set = (ResourceSet)ResourceSets [culture];
+ if (set != null)
+ return set;
if(MainAssembly != null) {
/* Assembly resources */
@@ -340,9 +340,15 @@
throw new MissingManifestResourceException (msg);
}
- } else if(resourceDir != null) {
+ } else if (resourceDir != null || BaseNameField != null) {
/* File resources */
- string filename=Path.Combine(resourceDir, this.GetResourceFileName(culture));
+ string filename;
+
+ if(resourceDir != null)
+ filename = Path.Combine (resourceDir, GetResourceFileName (culture));
+ else
+ filename = GetResourceFileName(culture);
+
if(File.Exists(filename) &&
Createifnotexists==true) {
object[] args=new Object[1];
Modified: trunk/mcs/class/corlib/System.Resources/ResourceSet.cs
===================================================================
--- trunk/mcs/class/corlib/System.Resources/ResourceSet.cs 2006-12-30 21:29:14 UTC (rev 70270)
+++ trunk/mcs/class/corlib/System.Resources/ResourceSet.cs 2006-12-30 21:51:30 UTC (rev 70271)
@@ -48,7 +48,6 @@
protected IResourceReader Reader;
protected Hashtable Table;
- internal bool isDisposed = false;
// Constructors
protected ResourceSet () {}
@@ -103,8 +102,6 @@
Reader = null;
Table = null;
-
- isDisposed = true;
}
public virtual Type GetDefaultReader ()
_______________________________________________
Mono-patches maillist - Mono-patches@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-patches
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic