summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/barebox-state.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/barebox-state.c b/src/barebox-state.c
index 748a5b4..02e085b 100644
--- a/src/barebox-state.c
+++ b/src/barebox-state.c
@@ -1871,8 +1871,12 @@ static char *__state_string_get(struct state_variable *var)
char *str;
int ret;
- ret = asprintf(&str, "%s", string->raw);
- if (ret < 0)
+ if (string->raw[0])
+ str = strndup(string->raw, string->var.size);
+ else
+ str = strdup("");
+
+ if (!str)
return ERR_PTR(-ENOMEM);
return str;