From be9104783e75548195ec9f9661d4a3365d300f85 Mon Sep 17 00:00:00 2001 From: default Date: Tue, 4 Feb 2025 16:56:12 +0100 Subject: Don't append non-strings in xs_readline(). --- xs_io.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'xs_io.h') diff --git a/xs_io.h b/xs_io.h index 110b0eb..8fc5d6f 100644 --- a/xs_io.h +++ b/xs_io.h @@ -27,7 +27,8 @@ xs_str *xs_readline(FILE *f) while ((c = fgetc(f)) != EOF) { unsigned char rc = c; - s = xs_append_m(s, (char *)&rc, 1); + if (xs_is_string((char *)&rc)) + s = xs_append_m(s, (char *)&rc, 1); if (c == '\n') break; -- cgit v1.2.3 From 1089b24171934bc742c2e438f17ec1774b90c728 Mon Sep 17 00:00:00 2001 From: Santtu Lakkala Date: Thu, 6 Feb 2025 00:47:49 +0200 Subject: Rewrite http header parsing --- xs_io.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'xs_io.h') diff --git a/xs_io.h b/xs_io.h index 8fc5d6f..9c5018e 100644 --- a/xs_io.h +++ b/xs_io.h @@ -14,7 +14,7 @@ xs_val *xs_readall(FILE *f); xs_str *xs_readline(FILE *f) /* reads a line from a file */ { - xs_str *s = NULL; + xs_str *s = xs_str_new(NULL); errno = 0; @@ -22,8 +22,6 @@ xs_str *xs_readline(FILE *f) if (!feof(f)) { int c; - s = xs_str_new(NULL); - while ((c = fgetc(f)) != EOF) { unsigned char rc = c; -- cgit v1.2.3