From ed740b06b18e1a23becd54c97ff229aba4c94349 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 25 Aug 2021 11:06:34 -0400 Subject: [PATCH] Remove redundant test. The condition "context_start < context_end" is strictly weaker than "context_end - context_start >= 50", so we don't need both. Oversight in commit ffd3944ab, noted by tanghy.fnst. In passing, line-wrap a nearby test to make it more readable. Discussion: https://postgr.es/m/OS0PR01MB61137C4054774F44E3A9DC89FBC69@OS0PR01MB6113.jpnprd01.prod.outlook.com --- src/backend/utils/adt/jsonfuncs.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/adt/jsonfuncs.c b/src/backend/utils/adt/jsonfuncs.c index 09fcff6729..5fd54b64b5 100644 --- a/src/backend/utils/adt/jsonfuncs.c +++ b/src/backend/utils/adt/jsonfuncs.c @@ -652,7 +652,7 @@ report_json_context(JsonLexContext *lex) context_end = lex->token_terminator; /* Advance until we are close enough to context_end */ - while (context_end - context_start >= 50 && context_start < context_end) + while (context_end - context_start >= 50) { /* Advance to next multibyte character */ if (IS_HIGHBIT_SET(*context_start)) @@ -680,7 +680,9 @@ report_json_context(JsonLexContext *lex) * suffixing "..." if not ending at end of line. */ prefix = (context_start > line_start) ? "..." : ""; - suffix = (lex->token_type != JSON_TOKEN_END && context_end - lex->input < lex->input_length && *context_end != '\n' && *context_end != '\r') ? "..." : ""; + suffix = (lex->token_type != JSON_TOKEN_END && + context_end - lex->input < lex->input_length && + *context_end != '\n' && *context_end != '\r') ? "..." : ""; return errcontext("JSON data, line %d: %s%s%s", lex->line_number, prefix, ctxt, suffix);