summaryrefslogtreecommitdiffstats
path: root/src/json.c
diff options
context:
space:
mode:
authorAnton Luka Šijanec <anton@sijanec.eu>2022-02-16 19:56:47 +0100
committerAnton Luka Šijanec <anton@sijanec.eu>2022-02-16 19:56:47 +0100
commit316a09bcf460fe762c41ea0e082d216120f087d0 (patch)
tree7d32655f3e4df44584afcf7ff91b152fa4d203cf /src/json.c
parentnekaj sem delal v šoli (diff)
downloaddiscord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar.gz
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar.bz2
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar.lz
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar.xz
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.tar.zst
discord.c-316a09bcf460fe762c41ea0e082d216120f087d0.zip
Diffstat (limited to 'src/json.c')
-rw-r--r--src/json.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/json.c b/src/json.c
index 4fcfcf5..aae6f5d 100644
--- a/src/json.c
+++ b/src/json.c
@@ -24,8 +24,9 @@ char * dc_json (struct dc_json * j, const char * in, int ln) { /* detects start/
ln = strlen(in);
i = bufstrlen;
if (bufstrlen + ln > j->bufcap)
- j->buf = realloc(j->buf, (j->bufcap=(bufstrlen+ln)*DC_REALLOC_K)*sizeof(char));
- strcpy(j->buf+bufstrlen, in);
+ j->buf = realloc(j->buf, (j->bufcap=(bufstrlen+ln+2)*DC_REALLOC_K)*sizeof(char));
+ strncpy(j->buf+bufstrlen, in, ln);
+ j->buf[bufstrlen+ln] = '\0';
bufstrlen += ln;
while (i < bufstrlen) {
if (j->instr) {
@@ -40,9 +41,9 @@ char * dc_json (struct dc_json * j, const char * in, int ln) { /* detects start/
}
if (!escaped) {
j->instr = 0;
- fprintf(stderr, "dc_json: j->instr = 0\n");
- } else
- fprintf(stderr, "dc_json: escaped\n");
+ /* fprintf(stderr, "dc_json: j->instr = 0\n"); */
+ } /* else
+ fprintf(stderr, "dc_json: escaped\n"); */
}
goto next;
}
@@ -54,7 +55,7 @@ char * dc_json (struct dc_json * j, const char * in, int ln) { /* detects start/
break;
case '"':
j->instr++;
- fprintf(stderr, "dc_json: j->instr++\n");
+ /* fprintf(stderr, "dc_json: j->instr++\n"); */
break;
case '}':
case ']':