From: Alan T. DeKok Date: Mon, 7 Aug 2023 13:48:36 +0000 (-0400) Subject: Revert "Keep too-long lines from overwriting output_buffer (#5093)" X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bf93142759f7d69833d798b108af45d7984eff15;p=thirdparty%2Ffreeradius-server.git Revert "Keep too-long lines from overwriting output_buffer (#5093)" This reverts commit b69393030a90e01aa9ff592d0171333efa1c3498. You can use "goto" to jump into another block, but that won't cause the compiler to treat variables of the same name as identical. --- diff --git a/src/bin/unit_test_module.c b/src/bin/unit_test_module.c index f1365c16975..5122718ecf1 100644 --- a/src/bin/unit_test_module.c +++ b/src/bin/unit_test_module.c @@ -418,14 +418,8 @@ static bool do_xlats(fr_event_list_t *el, char const *filename, FILE *fp) } if (fr_sbuff_remaining(&line) > 0) { - int err_len; - too_much_text: - err_len = strlen("ERROR offset " " 'Too much text' ::" "::") + 4 + - fr_sbuff_remaining(&line); - if (err_len > (int) sizeof(output_buff) - 1) err_len = (int) sizeof(output_buff) - 1; talloc_free(xlat_ctx); - fr_sbuff_in_sprintf(&out, "ERROR offset %d 'Too much text' ::%.*s::", - (int) slen, err_len, fr_sbuff_current(&line)); + fr_sbuff_in_sprintf(&out, "ERROR offset %d 'Too much text' ::%s::", (int) slen, fr_sbuff_current(&line)); continue; } @@ -471,7 +465,11 @@ static bool do_xlats(fr_event_list_t *el, char const *filename, FILE *fp) continue; } - if (fr_sbuff_remaining(&line) > 0) goto too_much_text; + if (fr_sbuff_remaining(&line) > 0) { + talloc_free(xlat_ctx); + fr_sbuff_in_sprintf(&out, "ERROR offset %d 'Too much text' ::%s::", (int) slen, fr_sbuff_current(&line)); + continue; + } if (xlat_resolve(head, NULL) < 0) { talloc_free(xlat_ctx);