Bug 115189 - [BlackBerry] Enable balanced page group load deferrer behaviour.
Summary: [BlackBerry] Enable balanced page group load deferrer behaviour.
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit BlackBerry (show other bugs)
Version: 528+ (Nightly build)
Hardware: Other Other
: P2 Normal
Assignee: Mike Lattanzio
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-04-25 11:22 PDT by Mike Lattanzio
Modified: 2013-04-25 12:55 PDT (History)
2 users (show)

See Also:


Attachments
Patch (1.76 KB, patch)
2013-04-25 11:28 PDT, Mike Lattanzio
no flags Details | Formatted Diff | Diff
Patch (1.70 KB, patch)
2013-04-25 11:54 PDT, Mike Lattanzio
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Lattanzio 2013-04-25 11:22:10 PDT
Every port uses PageGroupLoadDeferrer wrapper objects, as do we. 
We should therefore enable the balanced page group load deferrer behavior so they can be safely nested.
Comment 1 Mike Lattanzio 2013-04-25 11:28:05 PDT
Created attachment 199695 [details]
Patch
Comment 2 Rob Buis 2013-04-25 11:36:59 PDT
Comment on attachment 199695 [details]
Patch

Ok.
Comment 3 WebKit Commit Bot 2013-04-25 11:39:27 PDT
Comment on attachment 199695 [details]
Patch

Rejecting attachment 199695 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.appspot.com', '--bot-id=webkit-cq-01', 'apply-attachment', '--no-update', '--non-interactive', 199695, '--port=mac']" exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
Rob Buis']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 2 diffs from patch file(s).
patching file Source/WebKit/blackberry/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebKit/blackberry/Api/WebPage.cpp
Hunk #1 FAILED at 631.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit/blackberry/Api/WebPage.cpp.rej

Failed to run "[u'/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply', '--force', '--reviewer', u'Rob Buis']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.appspot.com/results/11340
Comment 4 Joe Mason 2013-04-25 11:41:53 PDT
    I've done an audit to prove that this use is safe. Unlike other ports we don't expose the setWantsBalancedSetDefersLoadingBehavior in the platform API, and we don't expose any access to setDefersLoading except for a wrapper for PageGroupLoadDeferrer, which is meant to be created on the stack and calls setDefersLoading in the constructor and destructor, keeping the calls balanced. So we definitely do not have any unbalanced calls to setDefersLoading.

    And since we assumed PageGroupLoadDeferrers could be nested, and make heavy use of them, it's unsafe to NOT set wantsBalancedSetDefersLoadingBehavior.
Comment 5 Joe Mason 2013-04-25 11:45:05 PDT
(In reply to comment #3)
> (From update of attachment 199695 [details])
> patching file Source/WebKit/blackberry/Api/WebPage.cpp
> Hunk #1 FAILED at 631.
> 1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit/blackberry/Api/WebPage.cpp.rej

Oops, this was based on the internal branch and not the upstream branch and I guess it's diverged. We'll need to make the change in the internal and svn/master branches simultaneously, and merge them at the next rebase. (Hopefully the rest of the local changes will be upstreamed by then.)

Leaving this open until there's time to do that.
Comment 6 Mike Lattanzio 2013-04-25 11:54:17 PDT
Created attachment 199727 [details]
Patch
Comment 7 WebKit Commit Bot 2013-04-25 12:55:52 PDT
Comment on attachment 199727 [details]
Patch

Clearing flags on attachment: 199727

Committed r149135: <http://trac.webkit.org/changeset/149135>
Comment 8 WebKit Commit Bot 2013-04-25 12:55:53 PDT
All reviewed patches have been landed.  Closing bug.