Merge some bug/crash fixes from upstream.

This commit is contained in:
ajacoutot 2014-04-06 12:16:47 +00:00
parent 5a24cf3464
commit 604357c48e
5 changed files with 103 additions and 1 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.100 2014/04/02 09:36:14 jasper Exp $
# $OpenBSD: Makefile,v 1.101 2014/04/06 12:16:47 ajacoutot Exp $
SHARED_ONLY= Yes
@ -13,6 +13,10 @@ PKGNAME-main= gtk+3-${GNOME_VERSION}
PKGNAME-cups= gtk+3-cups-${GNOME_VERSION}
PKGNAME-cloudprint= gtk+3-cloudprint-${GNOME_VERSION}
REVISION-main= 0
REVISION-cups= 0
REVISION-cloudprint= 0
CATEGORIES= x11 devel
SHARED_LIBS += gdk-3 1200.0 # 1200.0

View File

@ -0,0 +1,22 @@
$OpenBSD: patch-gtk_gtkapplication-dbus_c,v 1.1 2014/04/06 12:16:47 ajacoutot Exp $
From 90b78f89d3f02b5d75d9403c59e98b45458fdeb5 Mon Sep 17 00:00:00 2001
From: Paolo Borelli <pborelli@gnome.org>
Date: Sun, 30 Mar 2014 11:57:23 +0200
Subject: application-dbus: free strings during finalization
--- gtk/gtkapplication-dbus.c.orig Mon Mar 24 18:28:56 2014
+++ gtk/gtkapplication-dbus.c Sun Apr 6 13:58:18 2014
@@ -419,7 +419,11 @@ gtk_application_impl_dbus_init (GtkApplicationImplDBus
static void
gtk_application_impl_dbus_finalize (GObject *object)
{
- //GtkApplicationImplDBus *dbus = (GtkApplicationImplDBus *) object;
+ GtkApplicationImplDBus *dbus = (GtkApplicationImplDBus *) object;
+
+ g_free (dbus->app_menu_path);
+ g_free (dbus->menubar_path);
+ g_free (dbus->app_id);
G_OBJECT_CLASS (gtk_application_impl_dbus_parent_class)->finalize (object);
}

View File

@ -0,0 +1,28 @@
$OpenBSD: patch-gtk_gtkflowbox_c,v 1.1 2014/04/06 12:16:47 ajacoutot Exp $
From 7ac684e9e3d0e58931d1c165d83e9e407467b461 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Sat, 29 Mar 2014 00:46:51 -0400
Subject: flow box: Avoid excessive signals
--- gtk/gtkflowbox.c.orig Mon Mar 24 18:28:56 2014
+++ gtk/gtkflowbox.c Sun Apr 6 13:57:56 2014
@@ -961,8 +961,6 @@ static gboolean
gtk_flow_box_child_set_selected (GtkFlowBoxChild *child,
gboolean selected)
{
- GtkFlowBox *box;
-
if (CHILD_PRIV (child)->selected != selected)
{
CHILD_PRIV (child)->selected = selected;
@@ -972,9 +970,6 @@ gtk_flow_box_child_set_selected (GtkFlowBoxChild *chil
else
gtk_widget_unset_state_flags (GTK_WIDGET (child),
GTK_STATE_FLAG_SELECTED);
-
- box = gtk_flow_box_child_get_box (child);
- _gtk_flow_box_accessible_selection_changed (GTK_WIDGET (box));
gtk_widget_queue_draw (GTK_WIDGET (child));

View File

@ -0,0 +1,30 @@
$OpenBSD: patch-gtk_gtkoverlay_c,v 1.1 2014/04/06 12:16:47 ajacoutot Exp $
From 2a26c39b299a24434595109640e31a77715c4ab1 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Sat, 5 Apr 2014 11:21:50 -0400
Subject: overlay: deal gracefully with main widget being absent
--- gtk/gtkoverlay.c.orig Mon Mar 24 18:28:56 2014
+++ gtk/gtkoverlay.c Sun Apr 6 13:59:46 2014
@@ -203,12 +203,19 @@ gtk_overlay_get_main_widget_allocation (GtkOverlay *ov
main_alloc.width = gtk_widget_get_allocated_width (grandchild);
main_alloc.height = gtk_widget_get_allocated_height (grandchild);
}
- else
+ else if (GTK_IS_WIDGET (main_widget))
{
main_alloc.x = 0;
main_alloc.y = 0;
main_alloc.width = gtk_widget_get_allocated_width (main_widget);
main_alloc.height = gtk_widget_get_allocated_height (main_widget);
+ }
+ else
+ {
+ main_alloc.x = 0;
+ main_alloc.y = 0;
+ main_alloc.width = 1;
+ main_alloc.height = 1;
}
if (main_alloc_out)

View File

@ -0,0 +1,18 @@
$OpenBSD: patch-gtk_gtktextbufferserialize_c,v 1.1 2014/04/06 12:16:47 ajacoutot Exp $
From a0f2e6990fa3c68760603ccb3c8b514b68707438 Mon Sep 17 00:00:00 2001
From: Paolo Borelli <pborelli@gnome.org>
Date: Sun, 30 Mar 2014 18:29:15 +0200
Subject: textbufferserialize: do not leak list of tags
--- gtk/gtktextbufferserialize.c.orig Thu Mar 6 05:42:58 2014
+++ gtk/gtktextbufferserialize.c Sun Apr 6 13:58:37 2014
@@ -576,6 +576,8 @@ serialize_text (GtkTextBuffer *buffer,
}
while (!gtk_text_iter_equal (&iter, &context->end));
+ g_slist_free (tag_list);
+
/* Close any open tags */
for (tag_list = active_tags; tag_list; tag_list = tag_list->next)
g_string_append (context->text_str, "</apply_tag>");