Only adjust negative indexes in json_get up to the length of the path.
Andrew Dunstan <andrew@dunslane.net>
Only adjust negative indexes in json_get up to the length of the path. The previous code resulted in memory access beyond the path bounds. The cure is to move it into a code branch that checks the value of lex_level is within the correct bounds. Bug reported and diagnosed by Piotr Stefaniak.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/adt/jsonfuncs.c | modified | +13 −13 |