<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>26802</bug_id>
          
          <creation_ts>2009-06-29 10:03:48 -0700</creation_ts>
          <short_desc>JSON.parse fails to parse valid JSON with most Unicode characters</short_desc>
          <delta_ts>2009-06-29 15:34:30 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Fazekas">fds</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>128828</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Fazekas">fds</who>
    <bug_when>2009-06-29 10:03:48 -0700</bug_when>
    <thetext>The new native JSON support in the nightly builds breaks most non-Western Latin websites, as it fails to parse almost any character other than certain basic Latin 1 letters.

Example:
JSON.parse(&apos;&quot;•&quot;&apos;);
SyntaxError: Unable to parse JSON string

It even fails to round-trip between its own stringify and parse:
JSON.parse(JSON.stringify(&apos;•&apos;));
SyntaxError: Unable to parse JSON string

These of course all work fine with Firefox 3.5, IE 8.0 or Douglas Crockford&apos;s JSON2.js.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128841</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-06-29 11:02:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/7016214&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128863</commentid>
    <comment_count>2</comment_count>
      <attachid>32018</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-29 13:18:52 -0700</bug_when>
    <thetext>Created attachment 32018
Fixeration!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128903</commentid>
    <comment_count>3</comment_count>
      <attachid>32018</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2009-06-29 15:28:10 -0700</bug_when>
    <thetext>Comment on attachment 32018
Fixeration!

In the ChangeLog, &apos;I&apos; is spelled incorrectly. :-P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128904</commentid>
    <comment_count>4</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-29 15:34:30 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	JavaScriptCore/ChangeLog
	M	JavaScriptCore/runtime/LiteralParser.cpp
	M	LayoutTests/ChangeLog
	M	LayoutTests/fast/js/JSON-parse-expected.txt
	M	LayoutTests/fast/js/resources/JSON-parse.js
Committed r45356</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32018</attachid>
            <date>2009-06-29 13:18:52 -0700</date>
            <delta_ts>2009-06-29 15:28:10 -0700</delta_ts>
            <desc>Fixeration!</desc>
            <filename>json-unicode.patch</filename>
            <type>text/plain</type>
            <size>4732</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCBjOGJiYTBmLi5iZGZlYjJmIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMDktMDYtMjkgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NzAxNjIxND4gSlNPTi5wYXJzZSBmYWlscyB0byBwYXJzZSB2YWxpZCBKU09OIHdpdGggbW9zdCBV
bmljb2RlIGNoYXJhY3RlcnMKKyAgICAgICAgPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yNjgwMj4KKworICAgICAgICBJbiB0aGUgb3JpZ2luYWwgSlNPTi5wYXJzZSBw
YXRjaCBpIGNvcnJlY3RseSBoYW5kbGVkIHVuaWNvZGUsIGhvd2V2ZXIgaW4gc29tZSBsYXN0IG1p
bnV0ZSAiY2xlYW4gdXAiIEkgb3ZlcnNpbXBsaWZpZWQgaXNTYWZlU3RyaW5nQ2hhcmFjdGVyLiAg
VGhpcyBwYXRjaCBjb3JyZWN0cyB0aGF0CisKKyAgICAgICAgKiBydW50aW1lL0xpdGVyYWxQYXJz
ZXIuY3BwOgorICAgICAgICAoSlNDOjppc1NhZmVTdHJpbmdDaGFyYWN0ZXIpOgorICAgICAgICAo
SlNDOjpMaXRlcmFsUGFyc2VyOjpMZXhlcjo6bGV4U3RyaW5nKToKKwogMjAwOS0wNi0yNiAgT2xp
dmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhbiBC
ZXJuc3RlaW4uCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJz
ZXIuY3BwIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9MaXRlcmFsUGFyc2VyLmNwcAppbmRleCAz
ZjNmYWI5Li43OTgwMTNhIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVy
YWxQYXJzZXIuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5j
cHAKQEAgLTEyNCw5ICsxMjQsOSBAQCBMaXRlcmFsUGFyc2VyOjpUb2tlblR5cGUgTGl0ZXJhbFBh
cnNlcjo6TGV4ZXI6OmxleChMaXRlcmFsUGFyc2VyVG9rZW4mIHRva2VuKQogICAgIHJldHVybiBU
b2tFcnJvcjsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGlzU2FmZVN0cmluZ0NoYXJhY3RlcihV
Q2hhciBjKQordGVtcGxhdGUgPExpdGVyYWxQYXJzZXI6OlBhcnNlck1vZGUgbW9kZT4gc3RhdGlj
IGlubGluZSBib29sIGlzU2FmZVN0cmluZ0NoYXJhY3RlcihVQ2hhciBjKQogewotICAgIHJldHVy
biAoYyA+PSAnICcgJiYgYyA8PSAweGZmICYmIGMgIT0gJ1xcJyAmJiBjICE9ICciJykgfHwgYyA9
PSAnXHQnOworICAgIHJldHVybiAoYyA+PSAnICcgJiYgKG1vZGUgPT0gTGl0ZXJhbFBhcnNlcjo6
U3RyaWN0SlNPTiB8fCBjIDw9IDB4ZmYpICYmIGMgIT0gJ1xcJyAmJiBjICE9ICciJykgfHwgYyA9
PSAnXHQnOwogfQogCiB0ZW1wbGF0ZSA8TGl0ZXJhbFBhcnNlcjo6UGFyc2VyTW9kZSBtb2RlPiBM
aXRlcmFsUGFyc2VyOjpUb2tlblR5cGUgTGl0ZXJhbFBhcnNlcjo6TGV4ZXI6OmxleFN0cmluZyhM
aXRlcmFsUGFyc2VyVG9rZW4mIHRva2VuKQpAQCAtMTM2LDcgKzEzNiw3IEBAIHRlbXBsYXRlIDxM
aXRlcmFsUGFyc2VyOjpQYXJzZXJNb2RlIG1vZGU+IExpdGVyYWxQYXJzZXI6OlRva2VuVHlwZSBM
aXRlcmFsUGFyc2VyCiAgICAgdG9rZW4uc3RyaW5nVG9rZW4gPSBVU3RyaW5nKCk7CiAgICAgZG8g
ewogICAgICAgICBydW5TdGFydCA9IG1fcHRyOwotICAgICAgICB3aGlsZSAobV9wdHIgPCBtX2Vu
ZCAmJiBpc1NhZmVTdHJpbmdDaGFyYWN0ZXIoKm1fcHRyKSkKKyAgICAgICAgd2hpbGUgKG1fcHRy
IDwgbV9lbmQgJiYgaXNTYWZlU3RyaW5nQ2hhcmFjdGVyPG1vZGU+KCptX3B0cikpCiAgICAgICAg
ICAgICArK21fcHRyOwogICAgICAgICBpZiAocnVuU3RhcnQgPCBtX3B0cikKICAgICAgICAgICAg
IHRva2VuLnN0cmluZ1Rva2VuLmFwcGVuZChydW5TdGFydCwgbV9wdHIgLSBydW5TdGFydCk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggYzRlOTA3YS4uNTNjMzBjMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDA5LTA2LTI5
ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwMTYyMTQ+IEpTT04u
cGFyc2UgZmFpbHMgdG8gcGFyc2UgdmFsaWQgSlNPTiB3aXRoIG1vc3QgVW5pY29kZSBjaGFyYWN0
ZXJzCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY4
MDI+CisKKyAgICAgICAgQWRkIHRlc3Qgb2YgdW5pY29kZSBwYXJzaW5nIGluIEpTT04uCisKKyAg
ICAgICAgKiBmYXN0L2pzL0pTT04tcGFyc2UtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qv
anMvcmVzb3VyY2VzL0pTT04tcGFyc2UuanM6CisgICAgICAgIChjcmVhdGVUZXN0cy5yZXN1bHQp
OgorICAgICAgICAoY3JlYXRlVGVzdHMpOgorCiAyMDA5LTA2LTI3ICBPbGl2ZXIgSHVudCAgPG9s
aXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqIFN0YWNob3dpYWsu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL0pTT04tcGFyc2UtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9KU09OLXBhcnNlLWV4cGVjdGVkLnR4dAppbmRleCBlODlm
MjRiLi42MjFmYTY0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL0pTT04tcGFyc2Ut
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvSlNPTi1wYXJzZS1leHBlY3Rl
ZC50eHQKQEAgLTU3NSw2ICs1NzUsMTAgQEAgZnVuY3Rpb24gKGpzb25PYmplY3QpIHsKICAgICAg
ICAgcmV0dXJuIGxvZ09yZGVyU3RyaW5nOwogICAgIH0KIFBBU1MgSlNPTi5zdHJpbmdpZnkodGVz
dHNbaV0obmF0aXZlSlNPTikpIGlzIEpTT04uc3RyaW5naWZ5KHRlc3RzW2ldKEpTT04pKQorZnVu
Y3Rpb24gKGpzb25PYmplY3QpIHsKKyAgICAgICAgcmV0dXJuIGpzb25PYmplY3QucGFyc2UoSlNP
Ti5zdHJpbmdpZnkodW5pY29kZSkpOworICAgIH0KK1BBU1MgdGVzdHNbaV0obmF0aXZlSlNPTikg
aXMgdGVzdHNbaV0udW5zdHJpbmdpZmllZEV4cGVjdGVkCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
anMvcmVzb3VyY2VzL0pTT04tcGFyc2UuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3Jlc291cmNl
cy9KU09OLXBhcnNlLmpzCmluZGV4IDM2Y2IyNzMuLmJkOGRiODIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvanMvcmVzb3VyY2VzL0pTT04tcGFyc2UuanMKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9qcy9yZXNvdXJjZXMvSlNPTi1wYXJzZS5qcwpAQCAtNTI0LDcgKzUyNCwxMyBAQCBmdW5j
dGlvbiBjcmVhdGVUZXN0cygpIHsKICAgICAgICAgdHJ5IHsganNvbk9iamVjdC5wYXJzZShKU09O
LnN0cmluZ2lmeShjb21wbGV4T2JqZWN0KSwgdGhyb3dBZnRlckZpZnRoQ2FsbCk7IH0gY2F0Y2gg
KGUpIHt9CiAgICAgICAgIHJldHVybiBsb2dPcmRlclN0cmluZzsKICAgICB9KTsKLQorICAgIHZh
ciB1bmljb2RlID0gIiI7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCAxPDwxNjsgaSsrKQorICAg
ICAgICB1bmljb2RlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoaSk7CisgICAgcmVzdWx0LnB1c2go
ZnVuY3Rpb24oanNvbk9iamVjdCl7CisgICAgICAgIHJldHVybiBqc29uT2JqZWN0LnBhcnNlKEpT
T04uc3RyaW5naWZ5KHVuaWNvZGUpKTsKKyAgICB9KTsKKyAgICByZXN1bHRbcmVzdWx0Lmxlbmd0
aCAtIDFdLnVuc3RyaW5naWZpZWRFeHBlY3RlZCA9IHVuaWNvZGU7CiAgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KIHZhciB0ZXN0cyA9IGNyZWF0ZVRlc3RzKCk7CkBAIC01NDMsNiArNTQ5LDggQEAgZm9y
ICh2YXIgaSA9IDA7IGkgPCB0ZXN0cy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgIGRl
YnVnKCJqc29uMi5qcyBkaWQgbm90IHRocm93IGZvciBhIHRlc3Qgd2UgZXhwZWN0IHRvIHRocm93
LiIpOwogICAgICAgICB9IGVsc2UgaWYgKHRlc3RzW2ldLmV4cGVjdGVkKQogICAgICAgICAgICAg
dHJ5IHsgc2hvdWxkQmUoJ0pTT04uc3RyaW5naWZ5KHRlc3RzW2ldKG5hdGl2ZUpTT04pKScsICAi
dGVzdHNbaV0uZXhwZWN0ZWQiKSB9IGNhdGNoKGUpIHsgZGVidWcoInRocmV3IC0gIiArIGUpfQor
ICAgICAgICBlbHNlIGlmICh0ZXN0c1tpXS51bnN0cmluZ2lmaWVkRXhwZWN0ZWQpCisgICAgICAg
ICAgICB0cnkgeyBzaG91bGRCZSgndGVzdHNbaV0obmF0aXZlSlNPTiknLCAgInRlc3RzW2ldLnVu
c3RyaW5naWZpZWRFeHBlY3RlZCIpIH0gY2F0Y2goZSkgeyBkZWJ1ZygidGhyZXcgLSAiICsgZSl9
CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHRyeSB7IHNob3VsZEJlKCdKU09OLnN0cmluZ2lm
eSh0ZXN0c1tpXShuYXRpdmVKU09OKSknLCAgJ0pTT04uc3RyaW5naWZ5KHRlc3RzW2ldKEpTT04p
KScpIH0gY2F0Y2goZSkgeyBkZWJ1ZygidGhyZXcgLSAiICsgZSkgfTsKICAgICB9Y2F0Y2goZSl7
Cg==
</data>
<flag name="review"
          id="16547"
          type_id="1"
          status="+"
          setter="barraclough"
    />
          </attachment>
      

    </bug>

</bugzilla>