[PATCH i-g-t 1/5] runner/settings: Deduplicate cleanup
Lucas De Marchi
lucas.demarchi at intel.com
Fri Jan 17 23:17:42 UTC 2025
Deduplicate cleanup so it's also easy to parse the line in a different
way.
Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
---
runner/settings.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/runner/settings.c b/runner/settings.c
index 92fd42ea6..80d95be5b 100644
--- a/runner/settings.c
+++ b/runner/settings.c
@@ -1154,13 +1154,10 @@ bool serialize_settings(struct settings *settings)
bool read_settings_from_file(struct settings *settings, FILE *f)
{
-#define PARSE_LINE(s, name, val, field, write) \
- if (!strcmp(name, #field)) { \
- s->field = write; \
- free(name); \
- free(val); \
- name = val = NULL; \
- continue; \
+#define PARSE_LINE(s, name, val, field, write) \
+ if (!strcmp(name, #field)) { \
+ s->field = write; \
+ goto cleanup; \
}
char *name = NULL, *val = NULL;
@@ -1195,6 +1192,8 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
printf("Warning: Unknown field in settings file: %s = %s\n",
name, val);
+
+cleanup:
free(name);
free(val);
name = val = NULL;
--
2.48.0
More information about the igt-dev
mailing list