# HG changeset patch # User Richard Laager # Date 1135815713 0 # Node ID a99a0cc677138d66888d722b0c964066ae1f9697 # Parent 8765dee8f51706302dd2d62e85589826eb6fc1fd [gaim-migrate @ 15010] Fix SF Bug #1392371 Disabling the mouse gestures plugin and then performing a mouse gesture would cause a crash. committer: Tailor Script diff -r 8765dee8f517 -r a99a0cc67713 plugins/gestures/gestures.c --- a/plugins/gestures/gestures.c Wed Dec 28 09:04:51 2005 +0000 +++ b/plugins/gestures/gestures.c Thu Dec 29 00:21:53 2005 +0000 @@ -219,6 +219,7 @@ gtkconv = GAIM_GTK_CONVERSATION(conv); gstroke_cleanup(gtkconv->imhtml); + gstroke_disable(gtkconv->imhtml); } return TRUE; diff -r 8765dee8f517 -r a99a0cc67713 plugins/gestures/gstroke.h --- a/plugins/gestures/gstroke.h Wed Dec 28 09:04:51 2005 +0000 +++ b/plugins/gestures/gstroke.h Thu Dec 29 00:21:53 2005 +0000 @@ -33,6 +33,9 @@ /* enable strokes for the widget */ void gstroke_enable (GtkWidget *widget); +/* disable strokes for the widget */ +void gstroke_disable(GtkWidget *widget); + guint gstroke_signal_connect (GtkWidget *widget, const gchar *name, void (*func)(GtkWidget *widget, void *data), diff -r 8765dee8f517 -r a99a0cc67713 plugins/gestures/stroke-draw.c --- a/plugins/gestures/stroke-draw.c Wed Dec 28 09:04:51 2005 +0000 +++ b/plugins/gestures/stroke-draw.c Thu Dec 29 00:21:53 2005 +0000 @@ -256,6 +256,12 @@ last_mouse_position.invalid = TRUE; } +void +gstroke_disable(GtkWidget *widget) +{ + g_signal_handlers_disconnect_by_func(G_OBJECT(widget), G_CALLBACK(process_event), NULL); +} + guint gstroke_signal_connect (GtkWidget *widget, const gchar *name,