pidgin.2.4.3: c4d94a72: *** Plucked rev 69b22e32f7ada182101e0746...

sadrul at pidgin.im sadrul at pidgin.im
Sat Jun 21 10:45:43 EDT 2008


-----------------------------------------------------------------
Revision: c4d94a725f2ffd4480d89a95a041f4680ef3d46d
Ancestor: 128689778b1cff20cc4ac5ce02cd11ea2454b82b
Author: sadrul at pidgin.im
Date: 2008-06-21T14:41:18
Branch: im.pidgin.pidgin.2.4.3
URL: http://d.pidgin.im/viewmtn/revision/info/c4d94a725f2ffd4480d89a95a041f4680ef3d46d

Modified files:
        pidgin/gtkimhtml.c pidgin/gtkmenutray.c

ChangeLog: 

*** Plucked rev 69b22e32f7ada182101e0746f02891389ceb0c52 (sadrul at 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 at pidgin.im):
Small leak fix.


-------------- next part --------------
============================================================
--- pidgin/gtkimhtml.c	a2caa93225b1151bb18fd840654813f279597f69
+++ pidgin/gtkimhtml.c	d09aceaac9d81a38ec9b5a0d393753b7a83e2ba2
@@ -715,8 +715,8 @@ gtk_imhtml_expose_event (GtkWidget      
 	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;
 
 	while (gtk_text_iter_in_range(&cur, &start, &end)) {
============================================================
--- pidgin/gtkmenutray.c	13a805a9aa98d3e59a7bdf688af0223df2e414c1
+++ pidgin/gtkmenutray.c	379e9d48d2bb7d9a67fe6927cccdab5263f55971
@@ -84,19 +84,23 @@ static void
 }
 
 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);
 }
 


More information about the Commits mailing list