Bug 64150 made dispatchEvent raise DISPATCH_REQUEST_ERR if its argument is already being dispatched, per the DOM 3 Events spec: <http://www.w3.org/TR/2011/WD-DOM-Level-3-Events-20110531/#events-EventTarget-dispatchEvent> Raising an exception is right, however DOM Core specifies that it should raise INVALID_STATE_ERR: <http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-eventtarget-dispatchevent>
Actually, this may be controversial: <http://lists.w3.org/Archives/Public/www-dom/2011JulSep/thread.html#msg42>