source = null;
fromConfig = false;
object o = foundries [foundryName];
+
if (o == null)
return null;
if (af == null)
return null;
- Type t;
+ Type t = null;
Exception e = null;
foreach (Foundry f in af) {
try {
af.Add (f);
foundries [foundryName] = af;
}
-
- af.Insert (0, newFoundry);
+
+ if (newFoundry is AssemblyFoundry) {
+ object o;
+ for (int i = 0; i < af.Count; i++) {
+ o = af [i];
+ if (o is AssemblyFoundry) {
+ af.Insert (i, newFoundry);
+ return;
+ }
+ }
+ af.Add (newFoundry);
+ } else
+ af.Insert (0, newFoundry);
}
public bool LookupFoundry (string foundryName)
+2008-05-15 Marek Habersack <mhabersack@novell.com>
+
+ * AspComponentFoundry.cs: treat AssemblyFoundry in a special way
+ when adding a foundry to the array list. AssemblyFoundry instances
+ are stacked at the end of the array list in a LIFO manner. That
+ way TagNameFoundry takes precedence over AssemblyFoundry should
+ the two contain the same type.
+
+2008-05-14 Marek Habersack <mhabersack@novell.com>
+
+ * ParseException.cs: location can be null in the FileText property
+ getter.
+
2008-05-07 Marek Habersack <mhabersack@novell.com>
* AspGenerator.cs: push the include file directory to the parser
if (fileText != null)
return fileText;
- string text = location.FileText;
+ string text = location != null ? location.FileText : null;
if (text != null && text.Length > 0)
return text;
string resourceName = attrs [i].WebResource;
if (resourceName != null && resourceName.Length > 0) {
#if SYSTEM_WEB_EXTENSIONS
- hashtable.Add (new ResourceKey (resourceName, false), CreateResourceUrl (assembly, resourceName, false));
- hashtable.Add (new ResourceKey (resourceName, true), CreateResourceUrl (assembly, resourceName, true));
+ ResourceKey rkNoNotify = new ResourceKey (resourceName, false);
+ ResourceKey rkNotify = new ResourceKey (resourceName, true);
+
+ if (!hashtable.Contains (rkNoNotify))
+ hashtable.Add (rkNoNotify, CreateResourceUrl (assembly, resourceName, false));
+ if (!hashtable.Contains (rkNotify))
+ hashtable.Add (rkNotify, CreateResourceUrl (assembly, resourceName, true));
#else
- hashtable.Add (resourceName, CreateResourceUrl (assembly, resourceName, false));
+ if (!hashtable.Contains (resourceName))
+ hashtable.Add (resourceName, CreateResourceUrl (assembly, resourceName, false));
#endif
}
}
+2008-05-14 Marek Habersack <mhabersack@novell.com>
+
+ * AssemblyResourceLoader.cs: do not add the same entry to a
+ hashtable twice
+
2008-04-15 Marek Habersack <mhabersack@novell.com>
* AssemblyResourceLoader.cs: dispose of streams the way it should