diff options
author | Marc Kleine-Budde <mkl@pengutronix.de> | 2015-06-21 20:29:51 +0200 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2015-06-21 20:29:51 +0200 |
commit | 66b3a1b9be863ade2570ca74df5647999f1208c1 (patch) | |
tree | 98e580036e40f21471b4c2468339bfda26bdc539 | |
parent | 55191a63c8c05c732e71c39618d35e4b337f8daf (diff) | |
download | dt-utils-66b3a1b9be863ade2570ca74df5647999f1208c1.tar.gz dt-utils-66b3a1b9be863ade2570ca74df5647999f1208c1.tar.xz |
barebox-state: __state_string_get: fix strings with max length
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-rw-r--r-- | src/barebox-state.c | 8 |
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; |