Summary: | WebKit2 doesn't build on Mac with strict PassOwnPtr | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Adam Barth <abarth> | ||||
Component: | WebKit2 | Assignee: | Sam Weinig <sam> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | sam | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Adam Barth
2011-05-11 13:37:16 PDT
Created attachment 93216 [details]
Patch
Committed r86296: <http://trac.webkit.org/changeset/86296> Comment on attachment 93216 [details]
Patch
I'm not sure this patch is right. Does that mean we're supposed to leak the replyEncoder if the arguments fail to decode? If this function is supposed take ownership, It seems more likely we should change the parameter to be a PassOwnPtr.
I tried chasing this for a while, but it mushroomed out of control pretty fast. I suspect there's a memory management bug here somewhere. For example, consider PluginControllerProxy::didReceiveSyncPluginControllerProxyMessage. Whether this function eventually calls delete on its third argument appears to depend on the MessageID. |