diff options
author | Marc Kleine-Budde <mkl@pengutronix.de> | 2015-06-18 12:03:20 +0200 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2015-06-18 12:03:20 +0200 |
commit | 784ead0b2c37242c571abfbc10b3458bd65025f3 (patch) | |
tree | 7f578a4433e3ee010c129f3c38a1a09ab7cac0c4 /src | |
parent | 9fb18621550dfbbc72041047d9d296315d1f5b21 (diff) | |
download | dt-utils-784ead0b2c37242c571abfbc10b3458bd65025f3.tar.gz dt-utils-784ead0b2c37242c571abfbc10b3458bd65025f3.tar.xz |
barebox-sate: import from barebox
improve fixed string support, trailing zero is not needed.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/barebox-state.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/barebox-state.c b/src/barebox-state.c index 68ec60d..748a5b4 100644 --- a/src/barebox-state.c +++ b/src/barebox-state.c @@ -470,8 +470,8 @@ static int state_string_export(struct state_variable *var, } if (string->value) - ret = of_set_property(node, "value", string->raw, - strlen(string->raw) + 1, 1); + ret = of_set_property(node, "value", string->value, + strlen(string->value) + 1, 1); return ret; } @@ -482,7 +482,7 @@ static int state_string_copy_to_raw(struct state_string *string, size_t len; len = strlen(src); - if (len >= string->var.size) + if (len > string->var.size) return -EILSEQ; /* copy string and clear remaining contents of buffer */ @@ -503,7 +503,7 @@ static int state_string_import(struct state_variable *sv, of_property_read_string(node, "default", &string->value_default); if (string->value_default) { len = strlen(string->value_default); - if (len >= string->var.size) + if (len > string->var.size) return -EILSEQ; } @@ -536,7 +536,7 @@ static int state_string_get(struct param_d *p, void *priv) free(string->value); if (string->raw[0]) - string->value = xstrdup(string->raw); + string->value = xstrndup(string->raw, string->var.size); else string->value = xstrdup(""); |