mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
json: allocate one extra byte for the \0
This commit is contained in:
parent
f891324e25
commit
579e8a4ea6
4 changed files with 6 additions and 5 deletions
|
|
@ -71,7 +71,7 @@ static void expect_string(struct spa_json *it, const char *str)
|
|||
char *s;
|
||||
spa_assert((len = spa_json_next(it, &value)) > 0);
|
||||
check_type(TYPE_STRING, value, len);
|
||||
s = alloca(len);
|
||||
s = alloca(len+1);
|
||||
spa_json_parse_string(value, len, s);
|
||||
spa_assert(strcmp(s, str) == 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -168,7 +168,7 @@ static int parse_modules(struct data *d, const char *str)
|
|||
if (spa_json_is_container(aval, alen))
|
||||
alen = spa_json_container_len(&it[2], aval, alen);
|
||||
|
||||
args = malloc(alen);
|
||||
args = malloc(alen + 1);
|
||||
spa_json_parse_string(aval, alen, args);
|
||||
} else if (strcmp(arg, "flags") == 0) {
|
||||
flags = strndup(aval, alen);
|
||||
|
|
@ -249,7 +249,8 @@ static int parse_objects(struct data *d, const char *str)
|
|||
if (strcmp(arg, "args") == 0) {
|
||||
if (spa_json_is_container(aval, alen))
|
||||
alen = spa_json_container_len(&it[2], aval, alen);
|
||||
args = malloc(alen);
|
||||
|
||||
args = malloc(alen + 1);
|
||||
spa_json_parse_string(aval, alen, args);
|
||||
} else if (strcmp(arg, "flags") == 0) {
|
||||
flags = strndup(aval, alen);
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ static bool find_match(struct spa_json *arr, struct pw_properties *props)
|
|||
if (spa_json_is_null(value, len)) {
|
||||
success = str == NULL;
|
||||
} else {
|
||||
spa_json_parse_string(value, SPA_MIN(len, 1024), val);
|
||||
spa_json_parse_string(value, SPA_MIN(len, 1023), val);
|
||||
value = val;
|
||||
len = strlen(val);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1616,7 +1616,7 @@ static int json_to_pod(struct spa_pod_builder *b, uint32_t id,
|
|||
spa_pod_builder_none(b);
|
||||
}
|
||||
else {
|
||||
char *val = alloca(len);
|
||||
char *val = alloca(len+1);
|
||||
spa_json_parse_string(value, len, val);
|
||||
switch (info->parent) {
|
||||
case SPA_TYPE_Id:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue