# HG changeset patch # User Sadrul Habib Chowdhury # Date 1214059278 0 # Node ID 76ae43c5e745a0b81e8c4e6a78e5ac1a25333cfe # Parent cae9ac6cb1a0ab47195b982638ac38a37b53c82c *** Plucked rev 69b22e32f7ada182101e0746f02891389ceb0c52 (sadrul@pidgin.im): The text iterators need to be properly ordered here. Taking the iterators from the x/y coordinates doesn't ensure the correct order, especially when RTL languages are involved. Thanks to thefox in #pidgin for reporting the bug. *** Plucked rev 777e7e6c4fb02c0b0f0dc557554cfc83b92544ae (sadrul@pidgin.im): Small leak fix. diff -r cae9ac6cb1a0 -r 76ae43c5e745 pidgin/gtkimhtml.c --- a/pidgin/gtkimhtml.c Thu Jun 19 18:13:32 2008 +0000 +++ b/pidgin/gtkimhtml.c Sat Jun 21 14:41:18 2008 +0000 @@ -715,7 +715,7 @@ gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(widget), &end, buf_x + event->area.width, buf_y + event->area.height); - + gtk_text_iter_order(&start, &end); cur = start; diff -r cae9ac6cb1a0 -r 76ae43c5e745 pidgin/gtkmenutray.c --- a/pidgin/gtkmenutray.c Thu Jun 19 18:13:32 2008 +0000 +++ b/pidgin/gtkmenutray.c Sat Jun 21 14:41:18 2008 +0000 @@ -84,19 +84,23 @@ } static void -pidgin_menu_tray_finalize(GObject *obj) { +pidgin_menu_tray_finalize(GObject *obj) +{ + PidginMenuTray *tray = PIDGIN_MENU_TRAY(obj); #if 0 /* This _might_ be leaking, but I have a sneaking suspicion that the widget is * getting destroyed in GtkContainer's finalize function. But if were are * leaking here, be sure to figure out why this causes a crash. * -- Gary */ - PidginMenuTray *tray = PIDGIN_MENU_TRAY(obj); if(GTK_IS_WIDGET(tray->tray)) gtk_widget_destroy(GTK_WIDGET(tray->tray)); #endif + if (tray->tooltips) + g_object_ref_sink(G_OBJECT(tray->tooltips)); + G_OBJECT_CLASS(parent_class)->finalize(obj); }