throw new ArgumentNullException ("virtualDir");
Evidence evidence = new Evidence (AppDomain.CurrentDomain.Evidence);
-
- //
- // Unique Domain ID
- //
- string domain_id = (virtualDir + physicalDir).GetHashCode ().ToString ("x");
//
// Setup
setup.ApplicationBase = physicalDir;
setup.CachePath = null;
- setup.ApplicationName = domain_id;
setup.ConfigurationFile = FindWebConfig (physicalDir);
setup.DisallowCodeDownload = true;
string bin_path = GetBinPath (physicalDir);
string dynamic_dir = null;
string user = Environment.UserName;
+ int tempDirTag = 0;
+
for (int i = 0; ; i++){
string d = Path.Combine (Path.GetTempPath (),
String.Format ("{0}-temp-aspnet-{1:x}", user, i));
CreateDirectory (stamp);
dynamic_dir = d;
Directory.Delete (stamp);
+ tempDirTag = i.GetHashCode ();
break;
} catch (UnauthorizedAccessException){
continue;
}
}
+ //
+ // Unique Domain ID
+ //
+ string domain_id = (virtualDir.GetHashCode () ^ physicalDir.GetHashCode () ^ tempDirTag).ToString ("x");
+
+ setup.ApplicationName = domain_id;
setup.DynamicBase = dynamic_dir;
CreateDirectory (setup.DynamicBase);
+2007-04-05 Marek Habersack <mhabersack@novell.com>
+
+ * ApplicationHost.cs: make ApplicationName/domain id really
+ unique.
+
2007-02-21 Marek Habersack <grendello@gmail.com>
* ApplicationHost.cs: support both Bin and bin directories, prefer