]> git.saurik.com Git - apple/javascriptcore.git/blame - wtf/GOwnPtr.cpp
JavaScriptCore-554.1.tar.gz
[apple/javascriptcore.git] / wtf / GOwnPtr.cpp
CommitLineData
b37bf2e1 1/*
9dae56ea 2 * Copyright (C) 2008 Collabora Ltd.
b37bf2e1
A
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
b37bf2e1
A
17 */
18
9dae56ea
A
19#include "config.h"
20#include "GOwnPtr.h"
21
22namespace WTF {
23
24template <> void freeOwnedGPtr<GError>(GError* ptr)
25{
26 if (ptr)
27 g_error_free(ptr);
28}
b37bf2e1 29
9dae56ea
A
30template <> void freeOwnedGPtr<GList>(GList* ptr)
31{
32 g_list_free(ptr);
33}
b37bf2e1 34
9dae56ea
A
35template <> void freeOwnedGPtr<GCond>(GCond* ptr)
36{
37 if (ptr)
38 g_cond_free(ptr);
39}
b37bf2e1 40
9dae56ea
A
41template <> void freeOwnedGPtr<GMutex>(GMutex* ptr)
42{
43 if (ptr)
44 g_mutex_free(ptr);
45}
b37bf2e1 46
9dae56ea
A
47template <> void freeOwnedGPtr<GPatternSpec>(GPatternSpec* ptr)
48{
49 if (ptr)
50 g_pattern_spec_free(ptr);
51}
b37bf2e1 52
9dae56ea
A
53template <> void freeOwnedGPtr<GDir>(GDir* ptr)
54{
55 if (ptr)
56 g_dir_close(ptr);
57}
b37bf2e1 58
ba379fdc
A
59template <> void freeOwnedGPtr<GHashTable>(GHashTable* ptr)
60{
61 if (ptr)
62 g_hash_table_unref(ptr);
63}
64
9dae56ea 65} // namespace WTF