summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2015-02-02 09:32:45 +0100
committerAlexander Larsson <alexl@redhat.com>2015-02-02 09:32:59 +0100
commit88d166d8cc39cca1376da8df790f77ef3abbc1db (patch)
tree46277492f4e92bd6ed7673fd91c810beb214700f /gtk
parent8c361fd7e271f5b4adae2d99e58d515cf10bb861 (diff)
downloadgtk+-88d166d8cc39cca1376da8df790f77ef3abbc1db.tar.gz
gtkunixprint: Add support for g_autoptr()
https://bugzilla.gnome.org/show_bug.cgi?id=743640
Diffstat (limited to 'gtk')
-rw-r--r--gtk/Makefile.am1
-rw-r--r--gtk/gtkunixprint-autocleanups.h28
-rw-r--r--gtk/gtkunixprint.h2
3 files changed, 31 insertions, 0 deletions
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index b04d6ba3d0..14a43d0ef4 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -323,6 +323,7 @@ gtk_unix_print_public_h_sources = \
gtkprintunixdialog.h \
gtkprinter.h \
gtkprintjob.h \
+ gtkunixprint-autocleanups.h \
gtkunixprint.h
endif
diff --git a/gtk/gtkunixprint-autocleanups.h b/gtk/gtkunixprint-autocleanups.h
new file mode 100644
index 0000000000..e80da85503
--- /dev/null
+++ b/gtk/gtkunixprint-autocleanups.h
@@ -0,0 +1,28 @@
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#if !defined (__GTK_UNIX_PRINT_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtkunixprint.h> can be included directly."
+#endif
+
+#ifndef __GI_SCANNER__
+
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkPrintJob, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkPrinter, g_object_unref)
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkPrintUnixDialog, g_object_unref)
+
+#endif
diff --git a/gtk/gtkunixprint.h b/gtk/gtkunixprint.h
index 7bb2ceb034..c39e3d1fd6 100644
--- a/gtk/gtkunixprint.h
+++ b/gtk/gtkunixprint.h
@@ -24,6 +24,8 @@
#include <gtk/gtkprintjob.h>
#include <gtk/gtkprintunixdialog.h>
+#include <gtk/gtkunixprint-autocleanups.h>
+
#undef __GTK_UNIX_PRINT_H_INSIDE__
#endif /* __GTK_UNIX_PRINT_H__ */