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