1545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch/*
2545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch * Copyright (C) 2010 Collabora Ltd.
3545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *
4545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  This library is free software; you can redistribute it and/or
5545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  modify it under the terms of the GNU Lesser General Public
6545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  License as published by the Free Software Foundation; either
7545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  version 2 of the License, or (at your option) any later version.
8545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *
9545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  This library is distributed in the hope that it will be useful,
10545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  Lesser General Public License for more details.
13545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *
14545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  You should have received a copy of the GNU Lesser General Public
15545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  License along with this library; if not, write to the Free
16545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch *  Boston, MA 02110-1301 USA
18545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch */
19545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
20545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch#include "config.h"
215abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#include "OwnPtrCairo.h"
22545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
232bde8e466a4451c7319e3a072d118917957d6554Steve Block#if USE(FREETYPE)
24545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch#include <cairo-ft.h>
25545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch#include <fontconfig/fcfreetype.h>
26545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch#endif
27545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
2868513a70bcd92384395513322f1b801e7bf9c729Steve Block#include <cairo.h>
2968513a70bcd92384395513322f1b801e7bf9c729Steve Block
30545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochnamespace WTF {
31545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
322bde8e466a4451c7319e3a072d118917957d6554Steve Block#if USE(FREETYPE)
335abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merricktemplate <> void deleteOwnedPtr<FcObjectSet>(FcObjectSet* ptr)
34545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch{
35545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    if (ptr)
36545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        FcObjectSetDestroy(ptr);
37545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch}
38545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
395abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merricktemplate <> void deleteOwnedPtr<FcFontSet>(FcFontSet* ptr)
40545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch{
41545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    if (ptr)
42545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        FcFontSetDestroy(ptr);
43545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch}
44545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch#endif
45545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
4668513a70bcd92384395513322f1b801e7bf9c729Steve Blocktemplate <> void deleteOwnedPtr<cairo_path_t>(cairo_path_t* ptr)
4768513a70bcd92384395513322f1b801e7bf9c729Steve Block{
4868513a70bcd92384395513322f1b801e7bf9c729Steve Block    if (ptr)
4968513a70bcd92384395513322f1b801e7bf9c729Steve Block        cairo_path_destroy(ptr);
5068513a70bcd92384395513322f1b801e7bf9c729Steve Block}
5168513a70bcd92384395513322f1b801e7bf9c729Steve Block
52545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch} // namespace WTF
53