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-12 16:31:01 -0300
commitf08dbaf6a0c91dbfc9a2f1872f66ebfcdb0df5c9 (patch)
treed6e4318410eab27b4c14b47c87e0e10787464742
parent5c791327b41ac5a0b2e084e63b55f8a844600fbc (diff)
downloadglade-f08dbaf6a0c91dbfc9a2f1872f66ebfcdb0df5c9.tar.gz
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 7c54cf69..c1eeaa8e 100644
--- a/gladeui/glade-project.c
+++ b/gladeui/glade-project.c
@@ -2165,7 +2165,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)