[webkit-reviews] review requested: [Bug 20879] Implement HTML5 channel messaging : [Attachment 23573] updated patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Sep 19 10:34:15 PDT 2008
Alexey Proskuryakov <ap at webkit.org> has asked for review:
Bug 20879: Implement HTML5 channel messaging
https://bugs.webkit.org/show_bug.cgi?id=20879
Attachment 23573: updated patch
https://bugs.webkit.org/attachment.cgi?id=23573&action=edit
------- Additional Comments from Alexey Proskuryakov <ap at webkit.org>
> We should use the lexicalGlobalObject.
Fixed.
> Also, maybe I missed it, but how to you keep the MessagePorts, etc, from
> holding on to pointers to Frames that have been deallocated?
Fixed this (it did crash), and several more instances of hanging references.
Added a test case.
(In reply to comment #4)
> 1) A parent frame grabs a closure from a child frame, navigates the child,
> waits for the navigation to finish, and then calls the closure (which
> uses/creates a channel).
Currently, messages sent through the created port have the new origin. More
precisely,
Subframe:
window.createClosure = function() {
var MessageChannelConstructor = window.MessageChannel;
return function() {
var channel = new MessageChannelConstructor; // can't use
window.MessageChannel
channel.port1.postMessage("ping");
return channel.port2;
}
}
Main frame:
var closure = window.frames[0].createClosure();
... navigate subframe from 127.0.0.1 to localhost
var mainPort = closure();
mainPort.onmessage = function(evt) {
alert(evt.origin); // http://localhost:8000
}
mainPort.start();
Is this correct behavior?
> 2) A frame uses/creates a channel, synchronously navigates to a new security
> origin (see LayoutTests/http/tests/security/xss-DENIED-synchronous-form.html
> for an example of how to do this), and then uses/creates another channel.
I'm not sure what this means - what kinds of issues I can expect if a new
channel is created?
> In both cases, we should also test the situation in which the channel is
> created before the navigation and used after the navigation.
Noted, but haven't tried this yet, as I'm also not sure about expected
behavior.
More information about the webkit-reviews
mailing list