GNOME Bugzilla – Bug 643663
gnome-shell fails to start if any extensions path gives permission denied on stat
Last modified: 2011-03-02 15:01:26 UTC
Version: 2.91.90 In my case: /home/username/.local/share/gnome-shell/extensions - exists /usr/share/gnome-shell/extensions - doesn't exist /usr/local/share/gnome-shell/extensions - not statable, permission denied (due to Kerberised mount) What should happen: gnome-shell should start, using extensions in the paths it could read, and ignoring the path it did not have permission to read What happens: gnome-shell fails to start, error log... JS ERROR: !!! Exception was: Error: Error invoking Gio.enumerate_children: Permission denied JS ERROR: !!! lineNumber = '0' JS ERROR: !!! fileName = 'gjs_throw' JS ERROR: !!! stack = 'Error("Error invoking Gio.enumerate_children: Permission denied")@:0 ("Error invoking Gio.enumerate_children: Permission denied")@gjs_throw:0 @:0 _loadExtensionsIn([object _private_GObject_GLocalFile],1)@/usr/share/gnome-shell/js/ui/extensionSystem.js:177 loadExtensions()@/usr/share/gnome-shell/js/ui/extensionSystem.js:198 start()@/usr/share/gnome-shell/js/ui/main.js:193 @<main>:1 ' JS ERROR: !!! message = 'Error invoking Gio.enumerate_children: Permission denied' Window manager warning: Log level 32: Execution of main.js threw exception: Error: Error invoking Gio.enumerate_children: Permission denied
Created attachment 182248 [details] [review] extensions: Ignore extensions in directories without read permission Gio.enumerate_children() throws an exception if called for a directory without read permissions. Catch this case to allow the shell to start.
Review of attachment 182248 [details] [review]: Looks fine.
Attachment 182248 [details] pushed as 6207c68 - extensions: Ignore extensions in directories without read permission