Bug 4858

Summary: 204 response stops timers
Product: WebKit Reporter: Carsten Bormann <cabo>
Component: Page LoadingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: ap, ian, mason
Priority: P3 Keywords: HasReduction
Version: 420+   
Hardware: Mac   
OS: OS X 10.4   
Attachments:
Description Flags
Testcase none

Carsten Bormann
Reported 2005-09-05 14:49:26 PDT
I'm still working on an isolated test case, but I have a page that submits a form, receives a 204 response, which means I should stay on the same page, which happens alright in Safari 2.0.1. The problem: all the timers that were running on the page seem to stop. (I understand that handling 204 responses is unchartered territory for many, but it has become a more likely case recently with the interest in AJAX style interfaces.)
Attachments
Testcase (664 bytes, application/zip)
2005-09-08 04:37 PDT, Joost de Valk (AlthA)
no flags
Joost de Valk (AlthA)
Comment 1 2005-09-08 04:37:39 PDT
Created attachment 3813 [details] Testcase This testcase needs php installed, for the 204-test.php to return a 204.
Joost de Valk (AlthA)
Comment 2 2005-09-08 04:38:22 PDT
Behavior as described confiremd and reproduced in attached testcase. Don't know if this is fixable and even if this is supposed to be fixed.
mason
Comment 3 2009-12-29 13:53:11 PST
+1 Just ran into this issue on a current project. Am seeing this unexpected behavior in Safari 4.0.4 / Mac. Can confirm that Google Chrome 4.0/Win/Mac, Firefox 3.0,3.5/Win/Mac and IE 6/7/8 do NOT cancel running timers as the result of a 204 status HTTP response. It is surprising that Chrome doesn't have this flaw as it is also based on WebKit, no? See also this blog post (as more evidence of this as unexpected behavior): - http://www.harukizaemon.com/2008/04/getting-too-fancy-with-http-response.html
Alexey Proskuryakov
Comment 4 2011-05-05 11:33:56 PDT
Luiz Agostini alerted me to the fact that this no longer fails on Safari 5.0.5 on Mac, and I can confirm. Also tested ToT, just in case.
Note You need to log in before you can comment on or make changes to this bug.