[Mono-bugs] [Bug 74637][Nor] Changed - HttpWebRequest fails with AllowWriteStreamBuffering = false

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Sat, 16 Apr 2005 15:01:14 -0400 (EDT)

Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by lewing@ximian.com.


--- shadow/74637	2005-04-16 13:37:11.000000000 -0400
+++ shadow/74637.tmp.24440	2005-04-16 15:01:14.000000000 -0400
@@ -1,14 +1,14 @@
 Bug#: 74637
 Product: Mono: Class Libraries
 Version: 1.1
+OS: unknown
 OS Details: 
 Status: NEW   
+Severity: Unknown
 Priority: Normal
 Component: System
 AssignedTo: mono-bugs@ximian.com                            
 ReportedBy: lewing@ximian.com               
 QAContact: mono-bugs@ximian.com
 TargetMilestone: ---
@@ -20,6 +20,31 @@
 it can give the user feedback on how much of the potentially very big
 upload has occured.  With the latest code in SVN head this no long works,
 the write never seems to complete.  If I turn write buffering back on the
 progress info is wrong but the submission completes properly.
 The code in question lives in f-spot/src/FormClient.cs
+------- Additional Comments From lewing@ximian.com  2005-04-16 15:01 -------
+the FormClient code is fairly self contained but useless without a
+server.  The simplest method to reproduce this from within f-spot is
+to get www.flickr.com account, select a photo go to
+File->Export->Flickr fill in the email address and password then wait
+for the progress dialog to appear.  The dialog will show up but never
+progress at all until the connection times out.
+With older mono versions the writes complete and upload progresses.
+If you need a simpler test case something like
+public void Upload (string upload_url, string file_path) {		
+		FormClient client = new FormClient ();
+		client.Add ("start", System.Web.HttpUtility.UrlEncode (path));
+		client.Add ("photo", new FileInfo (path));
+		client.Add ("desc", "this is the description");
+		Stream response = client.Submit (upload_url).GetResponseStream ();
+		StreamReader reader = new StreamReader (response, Encoding.UTF8);
+		Console.WriteLine (reader.ReadToEnd ());
+should be enough to trigger the bug and never complete.