[gnome-shell] objectManager: clear inhibitor on unregistered interfaces



commit d29b86baf0fc723b2526a8de5b32b137e7ed5155
Author: Ray Strode <rstrode redhat com>
Date:   Wed Aug 21 18:00:40 2013 -0400

    objectManager: clear inhibitor on unregistered interfaces
    
    A D-Bus service can export more supported interfaces than the
    shell cares about.  In those cases, we avoid creating proxies,
    but neglect to finish things up so the object manager class
    knows it can mark itself loaded.
    
    This commit makes sure we do the proper finishing, so the object
    manager still loads in the face of unsupported interfaces.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=706542

 js/misc/objectManager.js |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/js/misc/objectManager.js b/js/misc/objectManager.js
index b954f1b..f7265fe 100644
--- a/js/misc/objectManager.js
+++ b/js/misc/objectManager.js
@@ -73,8 +73,11 @@ const ObjectManager = new Lang.Class({
     _addInterface: function(objectPath, interfaceName, onFinished) {
            let info = this._interfaceInfos[interfaceName];
 
-           if (!info)
+           if (!info) {
+               if (onFinished)
+                   onFinished();
                return;
+           }
 
            let proxy = new Gio.DBusProxy({ g_connection: this._connection,
                                            g_name: this._serviceName,


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