diff options
author | Marek Habersack <grendel@twistedcode.net> | 2007-08-27 22:37:48 +0400 |
---|---|---|
committer | Marek Habersack <grendel@twistedcode.net> | 2007-08-27 22:37:48 +0400 |
commit | e659f8968d2943e94136787d0256de16d8c21dcc (patch) | |
tree | c2a41e180c6ebf1b5702abd97cbc44b32ca13654 | |
parent | daba38037263452675c09182940fae4f27fe6e6a (diff) |
Commit 83715 to the branchmono-1.2.5
svn path=/branches/mono-1-2-5/mcs/; revision=84907
3 files changed, 19 insertions, 4 deletions
diff --git a/mcs/class/System.Web/System.Web.SessionState_2.0/ChangeLog b/mcs/class/System.Web/System.Web.SessionState_2.0/ChangeLog index 2b465a8f0da..047b5cc851b 100644 --- a/mcs/class/System.Web/System.Web.SessionState_2.0/ChangeLog +++ b/mcs/class/System.Web/System.Web.SessionState_2.0/ChangeLog @@ -1,3 +1,10 @@ +2007-07-31 Marek Habersack <mhabersack@novell.com> + + * SessionInProcHandler.cs: initialize the static session objects + collection from the application state instead of using + SessionStateUtility.GetSessionStaticObjects. Fixes bug #82193 + * SessionStateServerHandler.cs: as above + 2007-06-20 Marek Habersack <mhabersack@novell.com> * SessionInProcHandler.cs: use HttpRuntime.InternalCache to keep diff --git a/mcs/class/System.Web/System.Web.SessionState_2.0/SessionInProcHandler.cs b/mcs/class/System.Web/System.Web.SessionState_2.0/SessionInProcHandler.cs index f707b30f61b..dcd77e9f151 100644 --- a/mcs/class/System.Web/System.Web.SessionState_2.0/SessionInProcHandler.cs +++ b/mcs/class/System.Web/System.Web.SessionState_2.0/SessionInProcHandler.cs @@ -77,7 +77,7 @@ namespace System.Web.SessionState public override SessionStateStoreData CreateNewStoreData (HttpContext context, int timeout) { return new SessionStateStoreData (new SessionStateItemCollection (), - SessionStateUtility.GetSessionStaticObjects(context), + HttpApplicationFactory.ApplicationState.SessionObjects, timeout); } @@ -156,7 +156,7 @@ namespace System.Web.SessionState item.items = new SessionStateItemCollection (); } return new SessionStateStoreData (item.items, - SessionStateUtility.GetSessionStaticObjects(context), + HttpApplicationFactory.ApplicationState.SessionObjects, item.timeout); } catch { // we want such errors to be passed to the application. @@ -344,7 +344,7 @@ namespace System.Web.SessionState expireCallback (key, new SessionStateStoreData ( item.items, - SessionStateUtility.GetSessionStaticObjects (HttpContext.Current), + HttpApplicationFactory.ApplicationState.SessionObjects, item.timeout)); } else expireCallback (key, null); diff --git a/mcs/class/System.Web/System.Web.SessionState_2.0/SessionStateServerHandler.cs b/mcs/class/System.Web/System.Web.SessionState_2.0/SessionStateServerHandler.cs index 755e2ceef7a..47c0ad3b079 100644 --- a/mcs/class/System.Web/System.Web.SessionState_2.0/SessionStateServerHandler.cs +++ b/mcs/class/System.Web/System.Web.SessionState_2.0/SessionStateServerHandler.cs @@ -47,7 +47,7 @@ namespace System.Web.SessionState public override SessionStateStoreData CreateNewStoreData (HttpContext context, int timeout) { return new SessionStateStoreData (new SessionStateItemCollection (), - SessionStateUtility.GetSessionStaticObjects(context), + HttpApplicationFactory.ApplicationState.SessionObjects, timeout); } @@ -73,9 +73,11 @@ namespace System.Web.SessionState out SessionStateActions actions, bool exclusive) { +#if TRACE Console.WriteLine ("SessionStateServerHandler.GetItemInternal"); Console.WriteLine ("\tid == {0}", id); Console.WriteLine ("\tpath == {0}", context.Request.FilePath); +#endif locked = false; lockAge = TimeSpan.MinValue; lockId = Int32.MinValue; @@ -92,11 +94,15 @@ namespace System.Web.SessionState exclusive); if (item == null) { +#if TRACE Console.WriteLine ("\titem is null (locked == {0}, actions == {1})", locked, actions); +#endif return null; } if (actions == SessionStateActions.InitializeItem) { +#if TRACE Console.WriteLine ("\titem needs initialization"); +#endif return CreateNewStoreData (context, item.Timeout); } SessionStateItemCollection items = null; @@ -150,7 +156,9 @@ namespace System.Web.SessionState public override void Initialize (string name, NameValueCollection config) { +#if TRACE Console.WriteLine ("SessionStateServerHandler.Initialize"); +#endif if (String.IsNullOrEmpty (name)) name = "Session Server handler"; privateConfig = config; |