diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/oplist.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/oplist.c b/src/oplist.c index df12fb3..21d8a64 100644 --- a/src/oplist.c +++ b/src/oplist.c | |||
| @@ -550,7 +550,7 @@ static void parse_dict_data(parse_ctx ctx, plist_t dict) | |||
| 550 | if (ctx->pos >= ctx->end) { | 550 | if (ctx->pos >= ctx->end) { |
| 551 | PLIST_OSTEP_ERR("EOF while parsing dictionary item at offset %ld\n", ctx->pos - ctx->start); | 551 | PLIST_OSTEP_ERR("EOF while parsing dictionary item at offset %ld\n", ctx->pos - ctx->start); |
| 552 | ctx->err++; | 552 | ctx->err++; |
| 553 | break; | 553 | break; |
| 554 | } | 554 | } |
| 555 | val = NULL; | 555 | val = NULL; |
| 556 | ctx->err = node_from_openstep(ctx, &val); | 556 | ctx->err = node_from_openstep(ctx, &val); |
| @@ -710,6 +710,11 @@ static int node_from_openstep(parse_ctx ctx, plist_t *plist) | |||
| 710 | } | 710 | } |
| 711 | ctx->pos++; | 711 | ctx->pos++; |
| 712 | } | 712 | } |
| 713 | if (ctx->pos >= ctx->end) { | ||
| 714 | PLIST_OSTEP_ERR("EOF while parsing quoted string at offset %ld\n", ctx->pos - ctx->start); | ||
| 715 | ctx->err++; | ||
| 716 | goto err_out; | ||
| 717 | } | ||
| 713 | if (*ctx->pos != c) { | 718 | if (*ctx->pos != c) { |
| 714 | plist_free_data(data); | 719 | plist_free_data(data); |
| 715 | PLIST_OSTEP_ERR("Missing closing quote (%c) at offset %ld\n", c, ctx->pos - ctx->start); | 720 | PLIST_OSTEP_ERR("Missing closing quote (%c) at offset %ld\n", c, ctx->pos - ctx->start); |
