aboutsummaryrefslogtreecommitdiff
path: root/hardinfo/info.c
diff options
context:
space:
mode:
authorBurt P <pburt0@gmail.com>2020-01-06 00:53:51 -0600
committerLeandro A. F. Pereira <leandro@hardinfo.org>2020-01-17 16:15:54 -0800
commit73142b793562158babf717422262bd1011ef17e4 (patch)
treef391c896e77dd23d59d4390387befddaedd2b393 /hardinfo/info.c
parentc6f9dfec60f4bb5039e0dbb758313af58725242c (diff)
shell: new flag/funcs for escaping label part in keys
Will allow formerly forbidden characters in a label, "#$=" See: https://github.com/lpereira/hardinfo/issues/509 Signed-off-by: Burt P <pburt0@gmail.com>
Diffstat (limited to 'hardinfo/info.c')
-rw-r--r--hardinfo/info.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/hardinfo/info.c b/hardinfo/info.c
index 2d1d4159..5dd33b9c 100644
--- a/hardinfo/info.c
+++ b/hardinfo/info.c
@@ -496,8 +496,8 @@ struct Info *info_unflatten(const gchar *str)
for (k = 0; keys[k]; k++) {
struct InfoField field = {};
- gchar *flags, *tag, *name;
- key_get_components(keys[k], &flags, &tag, &name, NULL, NULL, TRUE);
+ gchar *flags, *tag, *name, *label, *dis;
+ key_get_components(keys[k], &flags, &tag, &name, &label, &dis, TRUE);
gchar *value = g_key_file_get_value(key_file, group_name, keys[k], NULL);
field.tag = tag;
@@ -511,8 +511,13 @@ struct Info *info_unflatten(const gchar *str)
field.highlight = TRUE;
if (key_value_has_vendor_string(flags))
field.value_has_vendor = TRUE;
+ if (key_label_is_escaped(flags)) {
+ //TODO:...
+ }
g_free(flags);
+ g_free(label);
+ g_free(dis);
g_array_append_val(group.fields, field);
}
g_array_append_val(info->groups, group);