gnome-shell/js
Will Thompson ab0c795e81 status/location: Handle geoclue not being activatable
In GNOME OS, due to a misconfiguration, geoclue was configured without
systemd support. In that configuration, geoclue does not install its
systemd .service file (geoclue.service) but it (incorrectly) includes
the following line in its D-Bus service file:

    SystemdService=geoclue.service

As a result, when dbus-daemon tried to activate it at gnome-shell's
request, it would fail with:

    Unit geoclue.service not found

Then, GeoclueAgent._onGeoclueVanished() would be called, as the
name_vanished_handler passed to Gio.bus_watch_name(). This is consistent
with Gio.bus_watch_name()'s documentation:

> You are guaranteed that one of the handlers will be invoked after
> calling this function.

But that function assumed that this._managerProxy is defined, leading
to:

    JS ERROR: TypeError: this._managerProxy is undefined
    _onGeoclueVanished@resource:///org/gnome/shell/ui/status/location.js:163:9

Fix this by checking for nullishness of this._managerProxy. (Strictly
speaking, it's undefined rather than being null, but other code in this
file already uses the vaguer '!= null' test, which considers undefined
to be null.)

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2689>
2023-03-19 12:46:50 +00:00
..
dbusServices screencastService: Handle case where no videos directory exists 2023-01-11 16:51:30 +00:00
gdm authPrompt: Also replace full-width colon 2023-02-13 20:32:21 +00:00
misc Update to drop GTK3 dependency 2023-03-03 20:38:03 +00:00
perf Add 'headless start' perf test 2023-02-06 18:10:01 +00:00
portalHelper portalHelper: Switch to soup3-based WebKitGTK 2022-06-21 19:29:02 +00:00
ui status/location: Handle geoclue not being activatable 2023-03-19 12:46:50 +00:00
js-resources.gresource.xml quickSettings: Add background apps menu 2023-02-12 16:16:36 +00:00
meson.build extensions-app: Move Extensions app to new subproject 2020-03-27 23:33:30 +00:00
portal-resources.gresource.xml js/portal-resources: Add missing fileUtils to js path 2022-11-03 18:02:27 +00:00