Bug 159080

Summary: [WK2] PageConfiguration.m_relatedPage keeps WebPageProxy alive after its WebView has been destroyed
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: WebKit2Assignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: andersca, beidson, benjamin, cmarcelo, commit-queue, sam, thorton, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Description Chris Dumez 2016-06-23 20:07:24 PDT
[WK2] PageConfiguration.m_relatedPage keeps WebPageProxy alive after its WebView has been destroyed. This leads to WebPageProxy object leaks when the client keeps using related views.
Comment 1 Chris Dumez 2016-06-23 20:07:39 PDT
rdar://problem/26982642
Comment 2 Chris Dumez 2016-06-23 20:11:25 PDT
Created attachment 281955 [details]
Patch
Comment 3 WebKit Commit Bot 2016-06-23 20:14:02 PDT
Attachment 281955 [details] did not pass style-queue:


ERROR: Source/WTF/wtf/WeakPtr.h:95:  Should be indented on a separate line, with the colon or comma first on that line.  [whitespace/indent] [4]
Total errors found: 1 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Anders Carlsson 2016-06-23 20:32:31 PDT
Comment on attachment 281955 [details]
Patch

I think this would break compatibility - the related web view configuration property is not weak. How about just clearing out the page configuration's related page in ::close() ?
Comment 5 Chris Dumez 2016-06-23 20:38:40 PDT
(In reply to comment #4)
> Comment on attachment 281955 [details]
> Patch
> 
> I think this would break compatibility - the related web view configuration
> property is not weak. How about just clearing out the page configuration's
> related page in ::close() ?

Thanks for the suggestion. I'll give this a try. I think we would keep at most 1 extra WebPageProxy alive instead of a chain of them so this would be a big improvement.
Comment 6 Chris Dumez 2016-06-23 21:48:50 PDT
Created attachment 281958 [details]
Patch
Comment 7 WebKit Commit Bot 2016-06-24 10:13:52 PDT
Comment on attachment 281958 [details]
Patch

Clearing flags on attachment: 281958

Committed r202426: <http://trac.webkit.org/changeset/202426>
Comment 8 WebKit Commit Bot 2016-06-24 10:13:58 PDT
All reviewed patches have been landed.  Closing bug.