diff options
author | Tad Fisher <tadfisher@gmail.com> | 2023-01-04 13:40:17 -0800 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2023-01-08 13:48:25 +0200 |
commit | 1469aac20d8ebcd3c5cca898b814c305278d4c27 (patch) | |
tree | 956bd71ca5e23d7607043e05b27040de99f85a49 /lisp/emacs-lisp/generate-lisp-file.el | |
parent | da96a1fd74189106c065e65002c7a4ac416fb5bb (diff) | |
download | emacs-1469aac20d8ebcd3c5cca898b814c305278d4c27.tar.gz emacs-1469aac20d8ebcd3c5cca898b814c305278d4c27.tar.bz2 emacs-1469aac20d8ebcd3c5cca898b814c305278d4c27.zip |
; * src/pgtkfns.c (parse_resource_key): Use recursive schema lookup
XDG_DATA_DIRS may consist of multiple directories, and
g_settings_schema_source_get_default composes these into a recursive
schema source. One must pass TRUE to g_settings_schema_source_lookup,
otherwise only the first directory in XDG_DATA_DIRS is searched.
It follows that in the case that the directory containing the compiled
GSettings schema for Emacs is not the first in XDG_DATA_DIRS,
parse_resource_key will not accept any resource key, which causes
pgtk_get_defaults_value and pgtk_set_defaults_value to fail.
This impacts systems that compose multiple GSettings schema sources
via XDG_DATA_DIRS, such Flatpak and NixOS.
Supporting GIO documentation for g_settings_schema_source_get_default:
> The returned source may actually consist of multiple schema sources
> from different directories, depending on which directories were given
> in `XDG_DATA_DIRS` and `GSETTINGS_SCHEMA_DIR`. For this reason, all
> lookups performed against the default source should probably be done
> recursively.
Bug#60565
Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/emacs-lisp/generate-lisp-file.el')
0 files changed, 0 insertions, 0 deletions