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:22:15
Message-ID: E1VwfnL-00071S-Sv@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
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/29dcf7ded5ef8533376689a85c5b242fc7ace01d

Modified Files
--------------
src/backend/utils/adt/json.c | 38 +++++++++++++++++++++++---------------
1 file changed, 23 insertions(+), 15 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2013-12-28 00:52:29 pgsql: Fix whitespace
Previous Message Andrew Dunstan 2013-12-27 22:22:07 pgsql: Properly detect invalid JSON numbers when generating JSON.