[gnome-shell] search: destroy result actors before forgetting about them



commit b78e00f372fcac01224743dfc3e26e841168c9c7
Author: Giovanni Campagna <gcampagna src gnome org>
Date:   Sun Feb 23 16:18:46 2014 +0100

    search: destroy result actors before forgetting about them
    
    We can't let live (ie, never destroyed) actors undergo GC, because
    they will emit :destroy signals during finalization and assert/crash
    libmozjs. Properly destroy all actors before letting the GC
    free them.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=724798

 js/ui/search.js |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/search.js b/js/ui/search.js
index 50868e3..e9ae6c8 100644
--- a/js/ui/search.js
+++ b/js/ui/search.js
@@ -315,6 +315,8 @@ const SearchResultsBase = new Lang.Class({
     },
 
     clear: function() {
+        for (let resultId in this._resultDisplays)
+            this._resultDisplays[resultId].actor.destroy();
         this._resultDisplays = {};
         this._clearResultDisplay();
         this.actor.hide();


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