summaryrefslogtreecommitdiff
path: root/src/sdl_fb.c
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@pengaru.com>2023-05-08 00:11:09 -0700
committerVito Caputo <vcaputo@pengaru.com>2023-05-11 15:18:02 -0700
commit1a8abe80dabd6b723897fc507808db30b126b3a4 (patch)
treed60a084d6b6b44b9fffe76864e00ed6d7176f2ad /src/sdl_fb.c
parenta409d9fd5d861d52dca0e4ed33416a49b00ae2d9 (diff)
til_settings: rework setting get/add for bare values
The core thing here is rather than turning a bare value into a key as I was doing before - we just leave the bare value as a bare value and its setting must be located positionally via get_value_by_idx since there's no key. Existing callers that used to get_key() positionally now get_value_by_idx() positionally all the same, except it's the value instead of the key. This is mostly done for things like the module or fb name at the front of a settings instance. The impetus for this change is partially just cosmetic/ergonomics, but it's also rather strange for what's really a key-less value to be treated as a value-less key. It was also awkward to talk/reason about on the road to recursive settings where bare values would be supported as a standalone settings instance if properly escaped... This also adds unescaping of keys, and adds a dependency on the somewhat linux-specific open_memstream() which may need changing in the future (see comments).
Diffstat (limited to 'src/sdl_fb.c')
-rw-r--r--src/sdl_fb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/sdl_fb.c b/src/sdl_fb.c
index 469fcb1..9eabbaf 100644
--- a/src/sdl_fb.c
+++ b/src/sdl_fb.c
@@ -73,7 +73,7 @@ static int sdl_fb_setup(const til_settings_t *settings, til_setting_t **res_sett
res_desc);
if (r)
return r;
- } else if ((size = til_settings_get_value(settings, "size", res_setting)) && !(*res_setting)->desc) {
+ } else if ((size = til_settings_get_value_by_key(settings, "size", res_setting)) && !(*res_setting)->desc) {
/* if fullscreen=on AND size=WxH is specified, we'll do a more legacy style SDL fullscreen
* where it tries to change the video mode. But if size is unspecified, it'll be a desktop
* style fullscreen where it just uses a fullscreen window in the existing video mode, and
© All Rights Reserved