pgsql: Properly detect invalid JSON numbers when generating JSON.

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Properly detect invalid JSON numbers when generating JSON.
Date: 2013-12-27 22:21:58
Message-ID: E1Vwfn4-00070L-NM@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Properly detect invalid JSON numbers when generating JSON.

Instead of looking for characters that aren't valid in JSON numbers, we
simply pass the output string through the JSON number parser, and if it
fails the string is quoted. This means among other things that money and
domains over money will be quoted correctly and generate valid JSON.

Fixes bug #8676 reported by Anderson Cristian da Silva.

Backpatched to 9.2 where JSON generation was introduced.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/4825a9e95fbc11f2edcdd9dbaba08f10d257596f

Modified Files
--------------
src/backend/utils/adt/json.c | 36 ++++++++++++++++++++++--------------
1 file changed, 22 insertions(+), 14 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andrew Dunstan 2013-12-27 22:22:07 pgsql: Properly detect invalid JSON numbers when generating JSON.
Previous Message Kevin Grittner 2013-12-27 21:44:18 pgsql: Fix misplaced right paren bugs in pgstatfuncs.c.