Bug 41956

Summary: [WIN] Correct DeleteObject usage in PasteboardWin
Product: WebKit Reporter: Patrick R. Gansterer <paroga>
Component: PlatformAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: aroben, commit-queue
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows XP   
Attachments:
Description Flags
Patch
aroben: review-
Patch (with OwnPtr) none

Description Patrick R. Gansterer 2010-07-09 06:05:38 PDT
see patch
Comment 1 Patrick R. Gansterer 2010-07-09 06:09:57 PDT
Created attachment 61038 [details]
Patch
Comment 2 Adam Roben (:aroben) 2010-07-22 13:13:19 PDT
Comment on attachment 61038 [details]
Patch

>      if (::OpenClipboard(m_owner)) {
>          ::SetClipboardData(CF_BITMAP, resultBitmap);
>          ::CloseClipboard();
> -    }
> +    } else
> +        ::DeleteObject(resultBitmap);
>  }

If you put resultBitmap into an OwnPtr, and then pass it to SetClipboardData using leakPtr, you won't have to remember this extra DeleteObject call (as OwnPtr will do it for you). I think that would be a bit nicer.

Otherwise, this looks great! I'm surprised this hasn't caused any (known) problems for us so far.
Comment 3 Patrick R. Gansterer 2010-07-22 13:26:47 PDT
Created attachment 62331 [details]
Patch (with OwnPtr)
Comment 4 Adam Roben (:aroben) 2010-07-22 13:43:09 PDT
Comment on attachment 62331 [details]
Patch (with OwnPtr)

r=me
Comment 5 WebKit Commit Bot 2010-07-22 19:15:20 PDT
Comment on attachment 62331 [details]
Patch (with OwnPtr)

Clearing flags on attachment: 62331

Committed r63940: <http://trac.webkit.org/changeset/63940>
Comment 6 WebKit Commit Bot 2010-07-22 19:15:24 PDT
All reviewed patches have been landed.  Closing bug.