From 32a3828d590bfb1f38b05beabc58754c025631a0 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 29 Sep 2025 14:56:16 +0200 Subject: [PATCH] bitbake: bitbake-setup: improve robustness of loading/writing settings Particularly: - ensure global settings command line argument is always expanded to full path - ensure any errors that happen when loading settings are reported at that point, otherwise we get an empty dictionary and cryptic key errors later (Bitbake rev: 578afa2f05dfa6727952365918df703875070f64) Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- bitbake/bin/bitbake-setup | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bitbake/bin/bitbake-setup b/bitbake/bin/bitbake-setup index 8ceacada9a..1fbb65494b 100755 --- a/bitbake/bin/bitbake-setup +++ b/bitbake/bin/bitbake-setup @@ -635,11 +635,11 @@ def load_settings(top_dir, non_interactive): settings_path = default_settings_path(top_dir) settings = configparser.ConfigParser() print('Loading settings from\n {}\n'.format(settings_path)) - settings.read([settings_path]) + settings.read_file(open(settings_path)) return settings def global_settings_path(args): - return args.global_settings if args.global_settings else os.path.join(os.path.expanduser('~'), '.config', 'bitbake-setup', 'config') + return os.path.abspath(args.global_settings) if args.global_settings else os.path.join(os.path.expanduser('~'), '.config', 'bitbake-setup', 'config') def write_global_settings(settings_path, force_replace, non_interactive=True): if not os.path.exists(settings_path) or force_replace: @@ -673,7 +673,7 @@ def load_global_settings(settings_path, non_interactive): settings = configparser.ConfigParser() print('Loading global settings from\n {}\n'.format(settings_path)) - settings.read([settings_path]) + settings.read_file(open(settings_path)) return settings def change_settings(top_dir, new_settings):