summaryrefslogtreecommitdiffstats
path: root/deskutils/gucharmap
diff options
context:
space:
mode:
authorbland <bland@df743ca5-7f9a-e211-a948-0013205c9059>2005-09-17 03:39:23 +0800
committerbland <bland@df743ca5-7f9a-e211-a948-0013205c9059>2005-09-17 03:39:23 +0800
commit276a365577c784bc62dd3d9240447e7cac745470 (patch)
treec480c444970e5ca7332688a5fbcd6915b9d97451 /deskutils/gucharmap
parent37723b01ab4d12f093914f9a6c3b2fbfeb832db9 (diff)
downloadmarcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar.gz
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar.bz2
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar.lz
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar.xz
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.tar.zst
marcuscom-ports-276a365577c784bc62dd3d9240447e7cac745470.zip
Finish lazy custom class implementation.
Derivatives *must* call finalize from parent class. Otherwise we may fall into situation when signal get delivered to already destroyed GtkWindow object. This fixes following crash with debug malloc() libarry: Run gucharmap -> Copy a few chars to clipboard -> Close git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@4841 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'deskutils/gucharmap')
-rw-r--r--deskutils/gucharmap/Makefile2
-rw-r--r--deskutils/gucharmap/files/patch-gucharmap_gucharmap-window.c33
2 files changed, 30 insertions, 5 deletions
diff --git a/deskutils/gucharmap/Makefile b/deskutils/gucharmap/Makefile
index ffbc5b2b1..061f3462d 100644
--- a/deskutils/gucharmap/Makefile
+++ b/deskutils/gucharmap/Makefile
@@ -3,10 +3,12 @@
# Whom: Joe Marcus Clarke <marcus@FreeBSD.org>
#
# $FreeBSD: ports/deskutils/gucharmap/Makefile,v 1.25 2005/03/12 10:52:59 marcus Exp $
+# $MCom$
#
PORTNAME= gucharmap
PORTVERSION= 1.4.4
+PORTREVISION= 2
CATEGORIES= deskutils gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME}/1.4
diff --git a/deskutils/gucharmap/files/patch-gucharmap_gucharmap-window.c b/deskutils/gucharmap/files/patch-gucharmap_gucharmap-window.c
index ce9879281..c0abeb262 100644
--- a/deskutils/gucharmap/files/patch-gucharmap_gucharmap-window.c
+++ b/deskutils/gucharmap/files/patch-gucharmap_gucharmap-window.c
@@ -1,6 +1,15 @@
---- gucharmap/gucharmap-window.c.orig Fri Feb 27 13:11:01 2004
-+++ gucharmap/gucharmap-window.c Wed Mar 3 22:45:21 2004
-@@ -417,8 +417,8 @@
+--- gucharmap/gucharmap-window.c.orig Mon Jan 24 05:56:53 2005
++++ gucharmap/gucharmap-window.c Sat Sep 17 04:04:07 2005
+@@ -82,6 +82,8 @@
+ ChaptersMode chapters_mode;
+ };
+
++static GtkWindowClass *parent_class = NULL;
++
+ static void
+ status_message (GtkWidget *widget,
+ const gchar *message,
+@@ -417,8 +419,8 @@
{
GucharmapWindowPrivate *priv = GUCHARMAP_WINDOW_GET_PRIVATE (guw);
gucharmap_charmap_set_chapters (guw->charmap, GUCHARMAP_CHAPTERS (gucharmap_script_chapters_new ()));
@@ -11,7 +20,7 @@
}
}
-@@ -430,8 +430,8 @@
+@@ -430,8 +432,8 @@
{
GucharmapWindowPrivate *priv = GUCHARMAP_WINDOW_GET_PRIVATE (guw);
gucharmap_charmap_set_chapters (guw->charmap, GUCHARMAP_CHAPTERS (gucharmap_block_chapters_new ()));
@@ -22,7 +31,7 @@
}
}
-@@ -834,12 +834,12 @@
+@@ -834,12 +836,12 @@
g_signal_connect (priv->status, "realize", G_CALLBACK (status_realize), guw);
priv->progress = gtk_progress_bar_new ();
@@ -37,3 +46,17 @@
#endif
gtk_widget_show_all (hbox);
+@@ -886,11 +888,13 @@
+ g_free (priv->last_search);
+ */
+ #endif
++ G_OBJECT_CLASS (parent_class)->finalize (object);
+ }
+
+ static void
+ gucharmap_window_class_init (GucharmapWindowClass *clazz)
+ {
++ parent_class = g_type_class_peek_parent (clazz);
+ GTK_WIDGET_CLASS (clazz)->show_all = show_all;
+ G_OBJECT_CLASS (clazz)->finalize = window_finalize;
+ g_type_class_add_private (clazz, sizeof (GucharmapWindowPrivate));