diff --git a/c/input/line_readers.c b/c/input/line_readers.c index 24eb1b392..64654f0c6 100644 --- a/c/input/line_readers.c +++ b/c/input/line_readers.c @@ -139,7 +139,6 @@ char* mlr_alloc_read_line_single_delimiter( FILE* fp, int delimiter, size_t* pold_then_new_strlen, - size_t* pnew_linecap, int do_auto_line_term, context_t* pctx) { @@ -191,7 +190,6 @@ char* mlr_alloc_read_line_single_delimiter( linelen = 0; } *pold_then_new_strlen = linelen; - *pnew_linecap = linecap; return line; } @@ -201,8 +199,7 @@ char* mlr_alloc_read_line_multiple_delimiter( FILE* fp, char* delimiter, int delimiter_length, - size_t* pold_then_new_strlen, - size_t* pnew_linecap) + size_t* pold_then_new_strlen) { size_t linecap = power_of_two_above(*pold_then_new_strlen); char* line = mlr_malloc_or_die(linecap); @@ -255,7 +252,6 @@ char* mlr_alloc_read_line_multiple_delimiter( linelen = 0; } *pold_then_new_strlen = linelen; - *pnew_linecap = linecap; return line; } diff --git a/c/input/line_readers.h b/c/input/line_readers.h index 452c2c651..8214d1bff 100644 --- a/c/input/line_readers.h +++ b/c/input/line_readers.h @@ -43,7 +43,6 @@ char* mlr_alloc_read_line_single_delimiter( FILE* fp, int delimiter, size_t* pold_then_new_strlen, - size_t* pnew_linecap, int do_auto_line_term, context_t* pctx); @@ -51,7 +50,6 @@ char* mlr_alloc_read_line_multiple_delimiter( FILE* fp, char* delimiter, int delimiter_length, - size_t* pold_then_new_strlen, - size_t* pnew_linecap); + size_t* pold_then_new_strlen); #endif // LINE_READERS_H diff --git a/c/input/lrec_reader_stdio_dkvp.c b/c/input/lrec_reader_stdio_dkvp.c index 6cc184dda..f3055beb3 100644 --- a/c/input/lrec_reader_stdio_dkvp.c +++ b/c/input/lrec_reader_stdio_dkvp.c @@ -97,6 +97,16 @@ static lrec_t* lrec_reader_stdio_dkvp_process_single_irs_single_others_auto_line FILE* input_stream = pvhandle; lrec_reader_stdio_dkvp_state_t* pstate = pvstate; int line_length; + +// ---------------------------------------------------------------- +// xxx init pstate->line_length @ prev +//char* line = mlr_alloc_read_line_single_delimiter(input_stream, pstate->irs[0], +// &pstate->line_length, xxxnolinecap, TRUE, pctx); +// pnew_linecap, +// do_auto_line_term, +// pctx); +// ---------------------------------------------------------------- + char* line = mlr_get_cline_with_length(input_stream, pstate->irs[0], &line_length); if (line == NULL) { return NULL; diff --git a/c/todo.txt b/c/todo.txt index a933ada57..0079d03c0 100644 --- a/c/todo.txt +++ b/c/todo.txt @@ -39,15 +39,9 @@ MSYS2 TO-DO ! msys2 / pacman -S / etc @ appveyor * getdelim replacement: - - avoid windows-compat problem by roll-my-own - - don't need getdelim's reuse case: always alloc - - reduce the number of functions in the callstack - - getdelim1 vs. getdelimn, all but identical. UT against one another in the n==1 case. - - always return len & linecap - - simplify reached-eof and already-at-eof semantics - - reuse linecap on subsequent calls. power of two above last readlen. - - work autodetect deeper into the callstack - - UTs + - comments @ header file + - push it into the stdio lrec readers + - rid of local_getdelim k get_unlocked / getc: k @ mlr_arch.h: ifdef MSYS2 define getc_unlocked(x) getc(x) diff --git a/c/unit_test/test_line_readers.c b/c/unit_test/test_line_readers.c index c1233f0e0..19cd4641f 100644 --- a/c/unit_test/test_line_readers.c +++ b/c/unit_test/test_line_readers.c @@ -46,7 +46,6 @@ static char* test_mlr_alloc_read_line_single_delimiter() { char* contents = NULL; char* line = NULL; size_t linelen = 0; - size_t linecap = 0; int do_auto_line_term = FALSE; context_t* pctx = NULL; @@ -54,16 +53,16 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = ""; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); // Read past EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); mu_assert_lf(line == NULL); fclose(fp); @@ -73,22 +72,20 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = "\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -97,22 +94,20 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = "abc\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -121,30 +116,27 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = "abc\n\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -153,30 +145,27 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = "\nabc\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -185,30 +174,27 @@ static char* test_mlr_alloc_read_line_single_delimiter() { contents = "\nabc"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -226,7 +212,6 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { char* contents = NULL; char* line = NULL; size_t linelen = 0; - size_t linecap = 0; int do_auto_line_term = TRUE; context_t ctx; context_t* pctx = &ctx; @@ -236,18 +221,18 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read past EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); mu_assert_lf(line == NULL); fclose(fp); @@ -258,24 +243,22 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); @@ -287,24 +270,22 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); @@ -316,24 +297,22 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); @@ -345,24 +324,22 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); @@ -374,34 +351,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -411,34 +385,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -448,34 +419,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -485,34 +453,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -522,34 +487,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -559,34 +521,31 @@ static char* test_mlr_alloc_read_line_single_delimiter_with_autodetect() { path = write_temp_file_or_die(contents); context_init_from_first_file_name(pctx, "fake-file-name"); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read line 2 - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); mu_assert_lf(pctx->auto_line_term_detected == TRUE); mu_assert_lf(streq(pctx->auto_line_term, "\r\n")); // Read to EOF - line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, &linecap, do_auto_line_term, pctx); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_single_delimiter(fp, delimiter, &linelen, do_auto_line_term, pctx); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -605,22 +564,21 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { char* contents = NULL; char* line = NULL; size_t linelen = 0; - size_t linecap = 0; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - contents = ""; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); // Read past EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); mu_assert_lf(line == NULL); fclose(fp); @@ -630,22 +588,20 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "xy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -654,22 +610,20 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "axy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "a")); mu_assert_lf(linelen == strlen("a")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -678,22 +632,20 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "abcxy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -702,30 +654,27 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "abcxy\nxy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -734,30 +683,27 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "xy\nabcxy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -766,30 +712,27 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "xy\nabc"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -798,30 +741,27 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "xy\nabcxy\n"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path); @@ -830,38 +770,34 @@ static char* test_mlr_alloc_read_line_multiple_delimiter() { contents = "abcxy\nxy\ndef"; path = write_temp_file_or_die(contents); fp = fopen_or_die(path); - linelen = linecap = 4; + linelen = 4; my_print_string(contents); // Read line 1 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "abc")); mu_assert_lf(linelen == strlen("abc")); - mu_assert_lf(linecap > linelen); // Read line 2 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "")); mu_assert_lf(linelen == strlen("")); - mu_assert_lf(linecap > linelen); // Read line 3 - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line != NULL); mu_assert_lf(streq(line, "def")); mu_assert_lf(linelen == strlen("def")); - mu_assert_lf(linecap > linelen); // Read to EOF - line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen, &linecap); - printf("linelen=%d linecap=%d line=\"%s\"\n", (int)linelen, (int)linecap, line); + line = mlr_alloc_read_line_multiple_delimiter(fp, delimiter, delimiter_length, &linelen); + printf("linelen=%d line=\"%s\"\n", (int)linelen, line); mu_assert_lf(line == NULL); - mu_assert_lf(linecap > linelen); fclose(fp); unlink_file_or_die(path);