diff options
author | Gonzalo Paniagua Javier <gonzalo.mono@gmail.com> | 2004-09-10 05:35:44 +0400 |
---|---|---|
committer | Gonzalo Paniagua Javier <gonzalo.mono@gmail.com> | 2004-09-10 05:35:44 +0400 |
commit | 59038e8fc8f2469b363a1de6071148ae15bcfb1e (patch) | |
tree | 439e88cdc51e18b1b5323f457a9ec9ffb790f2e8 | |
parent | 99a49e2835eb312e190bd1b56c77d69650d5bf19 (diff) |
2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* HttpServerUtility.cs: in Transfer(path), don't keep form data if
the transfer is done from inside a page that received a postback.
Fixes bug #65613.
svn path=/branches/mono-1-0/mcs/; revision=33682
-rw-r--r-- | mcs/class/System.Web/System.Web/ChangeLog | 6 | ||||
-rw-r--r-- | mcs/class/System.Web/System.Web/HttpServerUtility.cs | 11 |
2 files changed, 16 insertions, 1 deletions
diff --git a/mcs/class/System.Web/System.Web/ChangeLog b/mcs/class/System.Web/System.Web/ChangeLog index 6991c65dbe1..1e225536fb4 100644 --- a/mcs/class/System.Web/System.Web/ChangeLog +++ b/mcs/class/System.Web/System.Web/ChangeLog @@ -1,3 +1,9 @@ +2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com> + + * HttpServerUtility.cs: in Transfer(path), don't keep form data if + the transfer is done from inside a page that received a postback. + Fixes bug #65613. + 2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com> * HttpValueCollection.cs: fixed signature of ToString (). Closes bug diff --git a/mcs/class/System.Web/System.Web/HttpServerUtility.cs b/mcs/class/System.Web/System.Web/HttpServerUtility.cs index 29022db8253..0abb629c828 100644 --- a/mcs/class/System.Web/System.Web/HttpServerUtility.cs +++ b/mcs/class/System.Web/System.Web/HttpServerUtility.cs @@ -46,6 +46,7 @@ using System.Collections.Specialized; using System.IO; using System.Text; using System.Web.Hosting; +using System.Web.UI; using System.Web.Util; namespace System.Web @@ -303,7 +304,15 @@ namespace System.Web /// <param name="path">The URL path of the new page on the server to execute. </param> public void Transfer (string path) { - Transfer (path, true); + // If it's a page and a postback, don't pass form data + // See bug #65613. + bool preserveForm = true; + if (_Context.Handler is Page) { + Page page = (Page) _Context.Handler; + preserveForm = !page.IsPostBack; + } + + Transfer (path, preserveForm); } /// <summary> |