Thread: BUG #12620: JSONB seems to incorrectly handle escaped unicode
The following bug has been logged on the website: Bug reference: 12620 Logged by: Duncan Gillis Email address: dgillis@dystillr.com PostgreSQL version: 9.4.0 Operating system: Mac OS X 10.10.1 Description: When you give cast a string such as '"\\u0000"' as JSONB, it removes the first slash. With plain JSON: template1=# select '"\\u0000"'::json; json ------------ "\\u0000" (1 row) Whereas with JSONB one of the slashes is gone: template1=# select '"\\u0000"'::jsonb; jsonb ----------- "\u0000" (1 row)
On Wed, Jan 21, 2015 at 10:26:09PM +0000, dgillis@dystillr.com wrote: > The following bug has been logged on the website: > > Bug reference: 12620 > Logged by: Duncan Gillis > Email address: dgillis@dystillr.com > PostgreSQL version: 9.4.0 > Operating system: Mac OS X 10.10.1 > Description: > > When you give cast a string such as '"\\u0000"' as JSONB, it removes the > first slash. With plain JSON: > > template1=# select '"\\u0000"'::json; > json > ------------ > "\\u0000" > (1 row) > > Whereas with JSONB one of the slashes is gone: > > template1=# select '"\\u0000"'::jsonb; > jsonb > ----------- > "\u0000" > (1 row) Yes, Andrew Dunstan just reported this: http://www.postgresql.org/message-id/flat/54C03B86.80604@dunslane.net#54C03B86.80604@dunslane.net Seems we need to fix it. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +