[webkit-reviews] review denied: [Bug 54874] Frame opener is not reset between tests. : [Attachment 83322] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Feb 22 09:11:27 PST 2011


Alexey Proskuryakov <ap at webkit.org> has denied Vsevolod Vlasov
<vsevik at chromium.org>'s request for review:
Bug 54874: Frame opener is not reset between tests.
https://bugs.webkit.org/show_bug.cgi?id=54874

Attachment 83322: Patch
https://bugs.webkit.org/attachment.cgi?id=83322&action=review

------- Additional Comments from Alexey Proskuryakov <ap at webkit.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=83322&action=review

> Source/WebCore/ChangeLog:8
> +	   No new tests. (no code affected)

You could as well explain what has been done, not what hasn't. E.g.: "no
behavior change, just exporting a method for DumpRenderTree use."

> Source/WebKit/chromium/public/WebFrame.h:173
> +    // Reset the frame that opened this frame to 0.
> +    virtual void resetOpener() = 0;

Here an in all other ports: it's arguable whether this method resets opener or
not (resets to what?). I suggest naming it clearOpener() or forgetOpener().

> Source/WebKit/gtk/webkit/webkitwebframe.h:112
> +WEBKIT_API void
> +webkit_web_frame_reset_opener       (WebKitWebFrame	     *frame);

This should probably be in webkitwebframeprivate.h - you could ask Gtk folks to
be sure.

> Source/WebKit/mac/WebView/WebFrame.h:195
> +    @method resetOpener
> +    @discussion Resets mainFrame opener to 0
> +*/
> +- (void)resetOpener;

Please don't change anything in WebFrame.h - it's public Apple API, and any
changes need to be vetted in an internal Apple process.

New methods can be added to WebFramePrivate.h.

> Source/WebKit/qt/Api/qwebframe.h:149
> +    void resetOpener();

Again, not sure if it's OK to add an API method. The private interface is in
qwebframe_p.h.

>> Source/WebKit/win/WebFrame.cpp:752
>> +HRESULT STDMETHODCALLTYPE WebFrame::resetOpener( void)
> 
> Extra space after ( in function call	[whitespace/parens] [4]

Why does this need a (void) at all? That only sometimes makes a difference in
plain C.

>> Source/WebKit/win/WebFrame.h:146
>> +	virtual HRESULT STDMETHODCALLTYPE resetOpener( void);
> 
> Extra space after ( in function call	[whitespace/parens] [4]

Ditto - probably doesn't need (void).

> Source/WebKit2/ChangeLog:9
> +	   (WKBundleFrameCopyChildFrames):

Please add a ChangeLog comment explaining what you did.

> Source/WebKit2/ChangeLog:10
> +	   (WKBundleFrameResetOpener):

WebKit2 isn't an API, so we are more relaxed about adding functions there at
the moment. But WKBundleFrameResetOpener doesn't look like they would ever
become APIs, so it's best to put them in WKBundleFramePrivate.h right away.

> Tools/ChangeLog:6
> +	   DumpRenderTree should reset frame opener between tests.
> +	   https://bugs.webkit.org/show_bug.cgi?id=54874

Please explain what issue you are fixing. You are saying that opener needs to
be cleared, but what to and when is it set, in the first place?

> Tools/DumpRenderTree/win/DumpRenderTree.cpp:895
> +    if (FAILED(frame->resetOpener()))
> +	   return;

Your implementation of resetOpener can never FAIL, as far as I can tell.
Perhaps it's best to ASSERT the result - returning right before exiting the
function makes no sense anyway.


More information about the webkit-reviews mailing list