[gnome-characters] character: Delay related listbox cleanup



commit b0315abecc9a33192e7844cd6eacd31900b996ef
Author: Daiki Ueno <dueno src gnome org>
Date:   Tue Feb 24 14:30:19 2015 +0900

    character: Delay related listbox cleanup
    
    Removing a listbox row from a row-selected signal handler could cause a
    crash.  Delay the removal until a new listbox is populated.

 src/character.js |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/src/character.js b/src/character.js
index 445ca53..71c1064 100644
--- a/src/character.js
+++ b/src/character.js
@@ -67,6 +67,10 @@ const CharacterDialog = new Lang.Class({
     },
 
     _finishSearch: function(result) {
+        let children = this._related_listbox.get_children();
+        for (let index in children)
+            this._related_listbox.remove(children[index]);
+
         for (let index = 0; index < result.len; index++) {
             let uc = Gc.search_result_get(result, index);
             let name = Gc.character_name(uc);
@@ -109,10 +113,6 @@ const CharacterDialog = new Lang.Class({
         let codePointHex = codePoint.toString(16).toUpperCase();
         this._detail_label.label = _("Unicode U+%04s").format(codePointHex);
 
-        let children = this._related_listbox.get_children();
-        for (let index in children)
-            this._related_listbox.remove(children[index]);
-
         this._cancellable.cancel();
         this._cancellable.reset();
         Gc.search_related(


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