Don't leak the old page size when setting a new one. Bug #382314.

2006-12-04  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkpagesetup.c: (gtk_page_setup_get_paper_size),
	(gtk_page_setup_set_paper_size): Don't leak the old page size when
	setting a new one. Bug #382314.
This commit is contained in:
Christian Persch
2006-12-04 17:56:22 +00:00
committed by Christian Persch
parent 05a9fd07a4
commit 84995c213e
2 changed files with 18 additions and 0 deletions

View File

@@ -1,3 +1,9 @@
2006-12-04 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkpagesetup.c: (gtk_page_setup_get_paper_size),
(gtk_page_setup_set_paper_size): Don't leak the old page size when
setting a new one. Bug #382314.
2006-12-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmessagedialog.c (setup_type): Set a11y name and role

View File

@@ -163,6 +163,8 @@ gtk_page_setup_set_orientation (GtkPageSetup *setup,
GtkPaperSize *
gtk_page_setup_get_paper_size (GtkPageSetup *setup)
{
g_return_val_if_fail (GTK_IS_PAGE_SETUP (setup), NULL);
return setup->paper_size;
}
@@ -181,7 +183,17 @@ void
gtk_page_setup_set_paper_size (GtkPageSetup *setup,
GtkPaperSize *size)
{
GtkPaperSize *old_size;
g_return_if_fail (GTK_IS_PAGE_SETUP (setup));
g_return_if_fail (size != NULL);
old_size = setup->paper_size;
setup->paper_size = gtk_paper_size_copy (size);
if (old_size)
gtk_paper_size_free (old_size);
}
/**