From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> This replace the of g_key_file_get_integer which is limited to only decimal values to g_key_file_get_string and then use strtol to convert the string value to integer. Fixes: https://github.com/bluez/bluez/issues/293 --- src/main.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main.c b/src/main.c index bf9d398e4..a448320c1 100644 --- a/src/main.c +++ b/src/main.c @@ -354,13 +354,22 @@ static void parse_mode_config(GKeyFile *config, const char *group, for (i = 0; i < params_len; ++i) { GError *err = NULL; - int val = g_key_file_get_integer(config, group, - params[i].val_name, &err); + char *str; + + str = g_key_file_get_string(config, group, params[i].val_name, + &err); if (err) { DBG("%s", err->message); g_clear_error(&err); } else { - info("%s=%d", params[i].val_name, val); + char *endptr = NULL; + int val; + + val = strtol(str, &endptr, 0); + if (!endptr || *endptr != '\0') + continue; + + info("%s=%s(%d)", params[i].val_name, str, val); val = MAX(val, params[i].min); val = MIN(val, params[i].max); -- 2.35.1