summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan Pablo Ugarte <juanpablougarte@gmail.com>2014-04-12 16:26:33 -0300
committerJuan Pablo Ugarte <juanpablougarte@gmail.com>2014-04-23 17:49:24 -0300
commit94890267857e77ba3bf388b71b25aec97783a9f2 (patch)
tree45406efa2c33f05ebce0ff1c2bc7d908d5d1fc52
parentf268f53ba3124614e4e62d07514e0070461f213c (diff)
downloadglade-94890267857e77ba3bf388b71b25aec97783a9f2.tar.gz
Backport c4c50ab2d1f436f61c4a46986dc7b598d562c99e.
Thanks to Thomas Martitz for the backport. Ignore widgets that are not part of the project when generating edges of directed graph used to sort objects by topological order. Fixes bug 727992 "Editing UI and saving does not remove deleted Combo with Entry"
-rw-r--r--gladeui/glade-project.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gladeui/glade-project.c b/gladeui/glade-project.c
index 6f2b2021..904af00d 100644
--- a/gladeui/glade-project.c
+++ b/gladeui/glade-project.c
@@ -2483,7 +2483,13 @@ glade_project_get_graph_deps (GladeProject *project)
for (ll = _glade_widget_peek_prop_refs (predecessor); ll; ll = g_list_next (ll))
{
GladeWidget *successor = glade_property_get_widget (ll->data);
- GladeWidget *successor_top = glade_widget_get_toplevel (successor);
+ GladeWidget *successor_top;
+
+ /* Ignore widgets that are not part of this project. (ie removed ones) */
+ if (glade_widget_get_project (successor) != project)
+ continue;
+
+ successor_top = glade_widget_get_toplevel (successor);
/* Ignore objects within the same toplevel */
if (predecessor_top != successor_top)