1 /*
2  * Copyright (C) 2007 Apple Inc. All rights reserved.
3  * Copyright (C) 2008, 2009 Torch Mobile, Inc.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  *
14  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
15  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
17  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
18  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
19  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
20  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
21  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
22  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
24  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25  */
26 
27 #include "config.h"
28 #include "OwnPtr.h"
29 
30 #include <windows.h>
31 
32 namespace WTF {
33 
deleteOwnedPtr(HBITMAP ptr)34 void deleteOwnedPtr(HBITMAP ptr)
35 {
36     if (ptr)
37         DeleteObject(ptr);
38 }
39 
deleteOwnedPtr(HBRUSH ptr)40 void deleteOwnedPtr(HBRUSH ptr)
41 {
42     if (ptr)
43         DeleteObject(ptr);
44 }
45 
deleteOwnedPtr(HDC ptr)46 void deleteOwnedPtr(HDC ptr)
47 {
48     if (ptr)
49         DeleteDC(ptr);
50 }
51 
deleteOwnedPtr(HFONT ptr)52 void deleteOwnedPtr(HFONT ptr)
53 {
54     if (ptr)
55         DeleteObject(ptr);
56 }
57 
deleteOwnedPtr(HPALETTE ptr)58 void deleteOwnedPtr(HPALETTE ptr)
59 {
60     if (ptr)
61         DeleteObject(ptr);
62 }
63 
deleteOwnedPtr(HPEN ptr)64 void deleteOwnedPtr(HPEN ptr)
65 {
66     if (ptr)
67         DeleteObject(ptr);
68 }
69 
deleteOwnedPtr(HRGN ptr)70 void deleteOwnedPtr(HRGN ptr)
71 {
72     if (ptr)
73         DeleteObject(ptr);
74 }
75 
76 }
77