From 850d92bac083651be2a94c8fe40468cff37feec6 Mon Sep 17 00:00:00 2001 From: Palana Date: Fri, 11 Jul 2014 19:58:29 +0200 Subject: [PATCH] libobs: Add config_has_(user|default)_value functions Similar to obs_data_has_(user_value|default|autoselect), these allow library users to distinguish between user config values and default values --- libobs/util/config-file.c | 13 +++++++++++++ libobs/util/config-file.h | 5 +++++ 2 files changed, 18 insertions(+) diff --git a/libobs/util/config-file.c b/libobs/util/config-file.c index 7466caa31..8e34eaf71 100644 --- a/libobs/util/config-file.c +++ b/libobs/util/config-file.c @@ -598,3 +598,16 @@ double config_get_default_double(config_t config, const char *section, return 0.0; } + +bool config_has_user_value(config_t config, const char *section, + const char *name) +{ + return config_find_item(&config->sections, section, name) != NULL; +} + +bool config_has_default_value(config_t config, const char *section, + const char *name) +{ + return config_find_item(&config->defaults, section, name) != NULL; +} + diff --git a/libobs/util/config-file.h b/libobs/util/config-file.h index e35053c35..6cfd034f9 100644 --- a/libobs/util/config-file.h +++ b/libobs/util/config-file.h @@ -112,6 +112,11 @@ EXPORT bool config_get_default_bool(config_t config, const char *section, EXPORT double config_get_default_double(config_t config, const char *section, const char *name); +EXPORT bool config_has_user_value(config_t config, const char *section, + const char *name); +EXPORT bool config_has_default_value(config_t config, const char *section, + const char *name); + #ifdef __cplusplus } #endif