From 7dbcae49d47b9b3f8d8bd2fe65647df39fbf91f3 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 31 Jan 2004 22:57:17 +0000 Subject: [PATCH] Merge from HEAD: * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't crash when finalizing an unused GtkTextChildAnchor. (#132260, muppet) --- ChangeLog | 4 ++++ ChangeLog.pre-2-10 | 4 ++++ ChangeLog.pre-2-4 | 4 ++++ ChangeLog.pre-2-6 | 4 ++++ ChangeLog.pre-2-8 | 4 ++++ gtk/gtktextchild.c | 33 ++++++++++++++++++--------------- 6 files changed, 38 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8212ca055f..51286f529b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,10 @@ Sat Jan 31 22:43:49 2004 Matthias Clasen Merge from HEAD: + * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't + crash when finalizing an unused GtkTextChildAnchor. (#132260, + muppet) + * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct the documentation for new_order. (#124790, Tim-Philipp Müller) diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8212ca055f..51286f529b 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -2,6 +2,10 @@ Sat Jan 31 22:43:49 2004 Matthias Clasen Merge from HEAD: + * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't + crash when finalizing an unused GtkTextChildAnchor. (#132260, + muppet) + * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct the documentation for new_order. (#124790, Tim-Philipp Müller) diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 8212ca055f..51286f529b 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -2,6 +2,10 @@ Sat Jan 31 22:43:49 2004 Matthias Clasen Merge from HEAD: + * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't + crash when finalizing an unused GtkTextChildAnchor. (#132260, + muppet) + * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct the documentation for new_order. (#124790, Tim-Philipp Müller) diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 8212ca055f..51286f529b 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -2,6 +2,10 @@ Sat Jan 31 22:43:49 2004 Matthias Clasen Merge from HEAD: + * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't + crash when finalizing an unused GtkTextChildAnchor. (#132260, + muppet) + * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct the documentation for new_order. (#124790, Tim-Philipp Müller) diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 8212ca055f..51286f529b 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -2,6 +2,10 @@ Sat Jan 31 22:43:49 2004 Matthias Clasen Merge from HEAD: + * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't + crash when finalizing an unused GtkTextChildAnchor. (#132260, + muppet) + * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct the documentation for new_order. (#124790, Tim-Philipp Müller) diff --git a/gtk/gtktextchild.c b/gtk/gtktextchild.c index 0cc68f347f..6fd00a092c 100644 --- a/gtk/gtktextchild.c +++ b/gtk/gtktextchild.c @@ -377,24 +377,27 @@ gtk_text_child_anchor_finalize (GObject *obj) seg = anchor->segment; - if (seg->body.child.tree != NULL) + if (seg) { - g_warning ("Someone removed a reference to a GtkTextChildAnchor " - "they didn't own; the anchor is still in the text buffer " - "and the refcount is 0."); - return; - } + if (seg->body.child.tree != NULL) + { + g_warning ("Someone removed a reference to a GtkTextChildAnchor " + "they didn't own; the anchor is still in the text buffer " + "and the refcount is 0."); + return; + } - tmp_list = seg->body.child.widgets; - while (tmp_list) - { - g_object_unref (tmp_list->data); - tmp_list = g_slist_next (tmp_list); + tmp_list = seg->body.child.widgets; + while (tmp_list) + { + g_object_unref (tmp_list->data); + tmp_list = g_slist_next (tmp_list); + } + + g_slist_free (seg->body.child.widgets); + + g_free (seg); } - - g_slist_free (seg->body.child.widgets); - - g_free (seg); anchor->segment = NULL; }