From d29b86baf0fc723b2526a8de5b32b137e7ed5155 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Wed, 21 Aug 2013 18:00:40 -0400 Subject: [PATCH] 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 file changed, 4 insertions(+), 1 deletion(-) diff --git a/js/misc/objectManager.js b/js/misc/objectManager.js index b954f1bee..f7265fe70 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,