Bug 46028

Summary: [FileSystem] Fix Flags handling in DirectoryEntry custom binding code
Product: WebKit Reporter: Kinuko Yasuda <kinuko>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, dumi
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Bug Depends on:    
Bug Blocks: 42903    
Attachments:
Description Flags
Patch dumi: review+

Description Kinuko Yasuda 2010-09-17 22:57:42 PDT
DirectoryEntry's custom code added by issue 45724 for FileSystem API has wrong RefPtr handling.

When the given flags argument is an instance of Flags object, the custom code calls adoptRef to get a RefPtr from a raw Flags pointer returned by toFlags/toNative.
However, toFlags/toNative returns an already adopted pointer so it should just assign the returned pointer rather than adopt assignment (the latter doesn't increment refCount).
Comment 1 Kinuko Yasuda 2010-09-17 23:03:28 PDT
Created attachment 67997 [details]
Patch
Comment 2 Dumitru Daniliuc 2010-09-20 13:52:06 PDT
Comment on attachment 67997 [details]
Patch

r=me.

toFlags() returns a ref-counted object, because WebCore::Flags is ref-counted, right? if this is correct, it might be nice to mention this in the ChangeLog file (to make sure we don't copy-paste this code for some other class, and automatically assume that toNewClass() will be ref-counted too, when it might not be).
Comment 3 Kinuko Yasuda 2010-09-22 17:59:12 PDT
Committed r68105: <http://trac.webkit.org/changeset/68105>