- From: Anne van Kesteren <annevk@opera.com>
- Date: Thu, 22 Sep 2011 11:19:19 +0200
- To: "Eric U" <ericu@google.com>, "Glenn Maynard" <glenn@zewt.org>
- Cc: "Jonas Sicking" <jonas@sicking.cc>, arun@mozilla.com, "Kyle Huey" <me@kylehuey.com>, public-webapps@w3.org
On Thu, 22 Sep 2011 04:01:40 +0200, Glenn Maynard <glenn@zewt.org> wrote: > To my reading, a substep is a type of step. The "after finishing..." > sounds like it's saying not to terminate the currently-executing step; > that is, the event dispatch isn't stopped in the middle. Maybe "steps" > vs. "substeps" > are precisely defined somewhere else, but either way this could probably > be clearer. Anne? Your interpretation is correct. I could make it say "step or substep" but it seems people might want something else altogether. > I just tried this in FF6, and the behavior is inconsistent. If the TCP > connection has been established, then it follows your interpretation, and > you get onloadstart, onabort, onloadstart, onloadend, onloadend [1][3]. > If the TCP connection hasn't yet been established [2][4], calling open() > from either onabort or onloadend throws NS_ERROR_IN_PROGRESS. But open() has to dispatch a readystatechange event. That will get somewhere in the middle of that, no? > With the various inconsistencies, I wonder if the spec can't actually be > changed to disallow open() during the events, following FF6--that > NS_ERROR_IN_PROGRESS is probably unintentional, but it's in a shipping > browser nonetheless. Wishful thinking, maybe... There is the same problem with send() but there it was not a problem before either because you just had readystatechange. >> This sounds like a bug in the XHR spec as it doesn't fulfill the >> invariants I listed. > > I agree with those invariants, but they aren't normative anywhere, are > they? Nope. -- Anne van Kesteren http://annevankesteren.nl/
Received on Thursday, 22 September 2011 09:20:01 UTC