[glade/glade-3-16] Ignore widgets that are not part of the project when generating edges of directed graph used to sort



commit f08dbaf6a0c91dbfc9a2f1872f66ebfcdb0df5c9
Author: Juan Pablo Ugarte <juanpablougarte gmail com>
Date:   Sat Apr 12 16:26:33 2014 -0300

    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"

 gladeui/glade-project.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/gladeui/glade-project.c b/gladeui/glade-project.c
index 7c54cf6..c1eeaa8 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)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]