<?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>28797</bug_id>
          
          <creation_ts>2009-08-27 22:47:16 -0700</creation_ts>
          <short_desc>JSON Stringifier does not follow ES5 spec for handling of Number, String and Boolean objects</short_desc>
          <delta_ts>2009-08-27 23:17:57 -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>PC</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>143300</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-27 22:47:16 -0700</bug_when>
    <thetext>The JSON Stringifier currently just pulls the wrapped primitive from Number, String, and Boolean objects, rather than calling toNumber, toString, and toPrimitive as specified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143301</commentid>
    <comment_count>1</comment_count>
      <attachid>38716</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-27 22:57:18 -0700</bug_when>
    <thetext>Created attachment 38716
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143302</commentid>
    <comment_count>2</comment_count>
      <attachid>38716</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2009-08-27 22:58:39 -0700</bug_when>
    <thetext>Comment on attachment 38716
Patch v1

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143307</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-08-27 23:17:57 -0700</bug_when>
    <thetext>Committed r47857</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38716</attachid>
            <date>2009-08-27 22:57:18 -0700</date>
            <delta_ts>2009-08-27 22:58:39 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-28797-20090827225717.patch</filename>
            <type>text/plain</type>
            <size>10407</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA3NGI4NTIxLi42MWY4NmNjIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjEg
QEAKIDIwMDktMDgtMjcgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBKU09OIFN0cmluZ2lmaWVy
IGRvZXMgbm90IGZvbGxvdyBFUzUgc3BlYyBmb3IgaGFuZGxpbmcgb2YgTnVtYmVyLCBTdHJpbmcg
YW5kIEJvb2xlYW4gb2JqZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjg3OTcKKworICAgICAgICBGaXhlZCB1bndyYXBCb3hlZFByaW1pdGl2ZSB0
byBkbyB0aGUgcmlnaHQgdGhpbmcsIHdoaWNoIG5lY2Vzc2l0YXRlZCBhIGNvdXBsZSBvZiBuZXcg
ZXhjZXB0aW9uCisgICAgICAgIGNoZWNrcywgYW5kIGNvcnJlY3RlZCB0aGUgbG9naWMgaW4gZ2Fw
IHRvIGNvcnJlY3RseSBjb252ZXJ0IE51bWJlciBhbmQgU3RyaW5nIG9iamVjdHMuCisKKyAgICAg
ICAgKiBydW50aW1lL0pTT05PYmplY3QuY3BwOgorICAgICAgICAoSlNDOjp1bndyYXBCb3hlZFBy
aW1pdGl2ZSk6CisgICAgICAgIChKU0M6OmdhcCk6CisgICAgICAgIChKU0M6OlN0cmluZ2lmaWVy
OjpTdHJpbmdpZmllcik6CisgICAgICAgIChKU0M6OlN0cmluZ2lmaWVyOjphcHBlbmRTdHJpbmdp
ZmllZFZhbHVlKToKKworMjAwOS0wOC0yNyAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29t
PgorCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCiAKICAgICAgICAgSlNPTi5zdHJp
bmdpZnkgcmVwbGFjZXIgYXJyYXkgZG9lcyBub3QgYWNjZXB0IHZhbHVlcyB0aGF0IGFyZSBub3Qg
c3RyaW5nIHByaW1pdGl2ZXMuCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
T05PYmplY3QuY3BwIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRl
eCAxYjI4YTY1Li4yOTdkNDU3IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
T05PYmplY3QuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAK
QEAgLTEyMCwzOCArMTIwLDQ3IEBAIHByaXZhdGU6CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSBoZWxwZXIgZnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCiAKLXN0YXRpYyBpbmxpbmUgSlNWYWx1ZSB1bndyYXBCb3hlZFByaW1pdGl2ZShKU1ZhbHVl
IHZhbHVlKQorc3RhdGljIGlubGluZSBKU1ZhbHVlIHVud3JhcEJveGVkUHJpbWl0aXZlKEV4ZWNT
dGF0ZSogZXhlYywgSlNWYWx1ZSB2YWx1ZSkKIHsKICAgICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkp
CiAgICAgICAgIHJldHVybiB2YWx1ZTsKLSAgICBpZiAoIWFzT2JqZWN0KHZhbHVlKS0+aW5oZXJp
dHMoJk51bWJlck9iamVjdDo6aW5mbykgJiYgIWFzT2JqZWN0KHZhbHVlKS0+aW5oZXJpdHMoJlN0
cmluZ09iamVjdDo6aW5mbykgJiYgIWFzT2JqZWN0KHZhbHVlKS0+aW5oZXJpdHMoJkJvb2xlYW5P
YmplY3Q6OmluZm8pKQotICAgICAgICByZXR1cm4gdmFsdWU7Ci0gICAgcmV0dXJuIHN0YXRpY19j
YXN0PEpTV3JhcHBlck9iamVjdCo+KGFzT2JqZWN0KHZhbHVlKSktPmludGVybmFsVmFsdWUoKTsK
KyAgICBKU09iamVjdCogb2JqZWN0ID0gYXNPYmplY3QodmFsdWUpOworICAgIGlmIChvYmplY3Qt
PmluaGVyaXRzKCZOdW1iZXJPYmplY3Q6OmluZm8pKQorICAgICAgICByZXR1cm4ganNOdW1iZXIo
ZXhlYywgb2JqZWN0LT50b051bWJlcihleGVjKSk7CisgICAgaWYgKG9iamVjdC0+aW5oZXJpdHMo
JlN0cmluZ09iamVjdDo6aW5mbykpCisgICAgICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBvYmpl
Y3QtPnRvU3RyaW5nKGV4ZWMpKTsKKyAgICBpZiAob2JqZWN0LT5pbmhlcml0cygmQm9vbGVhbk9i
amVjdDo6aW5mbykpCisgICAgICAgIHJldHVybiBvYmplY3QtPnRvUHJpbWl0aXZlKGV4ZWMpOwor
ICAgIHJldHVybiB2YWx1ZTsKIH0KIAotc3RhdGljIGlubGluZSBVU3RyaW5nIGdhcChKU1ZhbHVl
IHNwYWNlKQorc3RhdGljIGlubGluZSBVU3RyaW5nIGdhcChFeGVjU3RhdGUqIGV4ZWMsIEpTVmFs
dWUgc3BhY2UpCiB7Ci0gICAgc3BhY2UgPSB1bndyYXBCb3hlZFByaW1pdGl2ZShzcGFjZSk7Cisg
ICAgY29uc3QgaW50IG1heEdhcExlbmd0aCA9IDEwOworICAgIHNwYWNlID0gdW53cmFwQm94ZWRQ
cmltaXRpdmUoZXhlYywgc3BhY2UpOwogCiAgICAgLy8gSWYgdGhlIHNwYWNlIHZhbHVlIGlzIGEg
bnVtYmVyLCBjcmVhdGUgYSBnYXAgc3RyaW5nIHdpdGggdGhhdCBudW1iZXIgb2Ygc3BhY2VzLgog
ICAgIGRvdWJsZSBzcGFjZUNvdW50OwogICAgIGlmIChzcGFjZS5nZXROdW1iZXIoc3BhY2VDb3Vu
dCkpIHsKLSAgICAgICAgY29uc3QgaW50IG1heFNwYWNlQ291bnQgPSAxMDA7CiAgICAgICAgIGlu
dCBjb3VudDsKLSAgICAgICAgaWYgKHNwYWNlQ291bnQgPiBtYXhTcGFjZUNvdW50KQotICAgICAg
ICAgICAgY291bnQgPSBtYXhTcGFjZUNvdW50OworICAgICAgICBpZiAoc3BhY2VDb3VudCA+IG1h
eEdhcExlbmd0aCkKKyAgICAgICAgICAgIGNvdW50ID0gbWF4R2FwTGVuZ3RoOwogICAgICAgICBl
bHNlIGlmICghKHNwYWNlQ291bnQgPiAwKSkKICAgICAgICAgICAgIGNvdW50ID0gMDsKICAgICAg
ICAgZWxzZQogICAgICAgICAgICAgY291bnQgPSBzdGF0aWNfY2FzdDxpbnQ+KHNwYWNlQ291bnQp
OwotICAgICAgICBVQ2hhciBzcGFjZXNbbWF4U3BhY2VDb3VudF07CisgICAgICAgIFVDaGFyIHNw
YWNlc1ttYXhHYXBMZW5ndGhdOwogICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNvdW50OyAr
K2kpCiAgICAgICAgICAgICBzcGFjZXNbaV0gPSAnICc7CiAgICAgICAgIHJldHVybiBVU3RyaW5n
KHNwYWNlcywgY291bnQpOwogICAgIH0KIAogICAgIC8vIElmIHRoZSBzcGFjZSB2YWx1ZSBpcyBh
IHN0cmluZywgdXNlIGl0IGFzIHRoZSBnYXAgc3RyaW5nLCBvdGhlcndpc2UgdXNlIG5vIGdhcCBz
dHJpbmcuCi0gICAgcmV0dXJuIHNwYWNlLmdldFN0cmluZygpOworICAgIFVTdHJpbmcgc3BhY2Vz
ID0gc3BhY2UuZ2V0U3RyaW5nKCk7CisgICAgaWYgKHNwYWNlcy5zaXplKCkgPiBtYXhHYXBMZW5n
dGgpIHsKKyAgICAgICAgc3BhY2VzID0gc3BhY2VzLnN1YnN0cigwLCBtYXhHYXBMZW5ndGgpOwor
ICAgIH0KKyAgICByZXR1cm4gc3BhY2VzOwogfQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0gUHJvcGVydHlOYW1lRm9yRnVuY3Rpb25DYWxsIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tCkBAIC0xODcsNyArMTk2LDcgQEAgU3RyaW5naWZpZXI6OlN0cmluZ2lmaWVy
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSByZXBsYWNlciwgSlNWYWx1ZSBzcGFjZSkKICAgICAs
IG1fdXNpbmdBcnJheVJlcGxhY2VyKGZhbHNlKQogICAgICwgbV9hcnJheVJlcGxhY2VyUHJvcGVy
dHlOYW1lcyhleGVjKQogICAgICwgbV9yZXBsYWNlckNhbGxUeXBlKENhbGxUeXBlTm9uZSkKLSAg
ICAsIG1fZ2FwKGdhcChzcGFjZSkpCisgICAgLCBtX2dhcChnYXAoZXhlYywgc3BhY2UpKQogewog
ICAgIGV4ZWMtPmdsb2JhbERhdGEoKS5maXJzdFN0cmluZ2lmaWVyVG9NYXJrID0gdGhpczsKIApA
QCAtMjAzLDEyICsyMTIsNiBAQCBTdHJpbmdpZmllcjo6U3RyaW5naWZpZXIoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHJlcGxhY2VyLCBKU1ZhbHVlIHNwYWNlKQogICAgICAgICAgICAgaWYgKGV4
ZWMtPmhhZEV4Y2VwdGlvbigpKQogICAgICAgICAgICAgICAgIGJyZWFrOwogCi0gICAgICAgICAg
ICBpZiAobmFtZS5pc09iamVjdCgpKSB7Ci0gICAgICAgICAgICAgICAgaWYgKCFhc09iamVjdChu
YW1lKS0+aW5oZXJpdHMoJk51bWJlck9iamVjdDo6aW5mbykgJiYgIWFzT2JqZWN0KG5hbWUpLT5p
bmhlcml0cygmU3RyaW5nT2JqZWN0OjppbmZvKSkKLSAgICAgICAgICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgICAgICAgICAgbmFtZSA9IHN0YXRpY19jYXN0PEpTV3JhcHBlck9iamVjdCo+
KGFzT2JqZWN0KG5hbWUpKS0+aW50ZXJuYWxWYWx1ZSgpOwotICAgICAgICAgICAgfQotCiAgICAg
ICAgICAgICBVU3RyaW5nIHByb3BlcnR5TmFtZTsKICAgICAgICAgICAgIGlmIChuYW1lLmdldFN0
cmluZyhwcm9wZXJ0eU5hbWUpKSB7CiAgICAgICAgICAgICAgICAgbV9hcnJheVJlcGxhY2VyUHJv
cGVydHlOYW1lcy5hZGQoSWRlbnRpZmllcihleGVjLCBwcm9wZXJ0eU5hbWUpKTsKQEAgLTIyMSw4
ICsyMjQsMTQgQEAgU3RyaW5naWZpZXI6OlN0cmluZ2lmaWVyKEV4ZWNTdGF0ZSogZXhlYywgSlNW
YWx1ZSByZXBsYWNlciwgSlNWYWx1ZSBzcGFjZSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsK
ICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQot
ICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIGlmIChuYW1lLmlzT2JqZWN0KCkp
IHsKKyAgICAgICAgICAgICAgICBpZiAoIWFzT2JqZWN0KG5hbWUpLT5pbmhlcml0cygmTnVtYmVy
T2JqZWN0OjppbmZvKSAmJiAhYXNPYmplY3QobmFtZSktPmluaGVyaXRzKCZTdHJpbmdPYmplY3Q6
OmluZm8pKQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBw
cm9wZXJ0eU5hbWUgPSBuYW1lLnRvU3RyaW5nKGV4ZWMpOworICAgICAgICAgICAgICAgIGlmIChl
eGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICAgICAgbV9hcnJheVJlcGxhY2VyUHJvcGVydHlOYW1lcy5hZGQoSWRlbnRpZmllcihleGVj
LCBwcm9wZXJ0eU5hbWUpKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICByZXR1
cm47CiAgICAgfQpAQCAtMzY5LDcgKzM3OCwxMCBAQCBTdHJpbmdpZmllcjo6U3RyaW5naWZ5UmVz
dWx0IFN0cmluZ2lmaWVyOjphcHBlbmRTdHJpbmdpZmllZFZhbHVlKFN0cmluZ0J1aWxkZXImCiAg
ICAgICAgIHJldHVybiBTdHJpbmdpZnlTdWNjZWVkZWQ7CiAgICAgfQogCi0gICAgdmFsdWUgPSB1
bndyYXBCb3hlZFByaW1pdGl2ZSh2YWx1ZSk7CisgICAgdmFsdWUgPSB1bndyYXBCb3hlZFByaW1p
dGl2ZShtX2V4ZWMsIHZhbHVlKTsKKworICAgIGlmIChtX2V4ZWMtPmhhZEV4Y2VwdGlvbigpKQor
ICAgICAgICByZXR1cm4gU3RyaW5naWZ5RmFpbGVkOwogCiAgICAgaWYgKHZhbHVlLmlzQm9vbGVh
bigpKSB7CiAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKHZhbHVlLmdldEJvb2xlYW4oKSA/ICJ0cnVl
IiA6ICJmYWxzZSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFjY2YwMzcuLjBkZmNmNzggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwx
OCBAQAogMjAwOS0wOC0yNyAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEpTT04gU3RyaW5naWZp
ZXIgZG9lcyBub3QgZm9sbG93IEVTNSBzcGVjIGZvciBoYW5kbGluZyBvZiBOdW1iZXIsIFN0cmlu
ZyBhbmQgQm9vbGVhbiBvYmplY3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yODc5NworCisgICAgICAgIEFkZGVkIG5ldyB0ZXN0cyB0byBjb3ZlciB0
eXBlIGNvbnZlcnNpb25zCisKKyAgICAgICAgKiBmYXN0L2pzL0pTT04tc3RyaW5naWZ5LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2pzL3Jlc291cmNlcy9KU09OLXN0cmluZ2lmeS5qczoK
KyAgICAgICAgKGNyZWF0ZVRlc3RzKToKKworMjAwOS0wOC0yNyAgT2xpdmVyIEh1bnQgIDxvbGl2
ZXJAYXBwbGUuY29tPgorCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCiAKICAgICAg
ICAgSlNPTi5zdHJpbmdpZnkgcmVwbGFjZXIgYXJyYXkgZG9lcyBub3QgYWNjZXB0IHZhbHVlcyB0
aGF0IGFyZSBub3Qgc3RyaW5nIHByaW1pdGl2ZXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2pzL0pTT04tc3RyaW5naWZ5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMv
SlNPTi1zdHJpbmdpZnktZXhwZWN0ZWQudHh0CmluZGV4IDJkYzk5M2UuLjFhY2UzMDYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvSlNPTi1zdHJpbmdpZnktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvanMvSlNPTi1zdHJpbmdpZnktZXhwZWN0ZWQudHh0CkBAIC01
MSw5ICs1MSwxNyBAQCBmdW5jdGlvbiAoanNvbk9iamVjdCkgewogICAgIH0KIFBBU1MgdGVzdHNb
aV0obmF0aXZlSlNPTikgaXMgdGVzdHNbaV0oSlNPTikKIGZ1bmN0aW9uIChqc29uT2JqZWN0KSB7
Ci0gICAgICAgIHJldHVybiBqc29uT2JqZWN0LnN0cmluZ2lmeShuZXcgQm9vbGVhbihmYWxzZSkp
OworICAgICAgICB2YXIgdmFsdWUgPSBuZXcgTnVtYmVyKDEpOworICAgICAgICB2YWx1ZS52YWx1
ZU9mID0gZnVuY3Rpb24oKSB7IHJldHVybiAyOyB9CisgICAgICAgIHJldHVybiBqc29uT2JqZWN0
LnN0cmluZ2lmeSh2YWx1ZSk7CiAgICAgfQotUEFTUyB0ZXN0c1tpXShuYXRpdmVKU09OKSBpcyB0
ZXN0c1tpXShKU09OKQorUEFTUyB0ZXN0c1tpXShuYXRpdmVKU09OKSBpcyB0ZXN0c1tpXS5leHBl
Y3RlZAorZnVuY3Rpb24gKGpzb25PYmplY3QpIHsKKyAgICAgICAgdmFyIHZhbHVlID0gbmV3IEJv
b2xlYW4odHJ1ZSk7CisgICAgICAgIHZhbHVlLnZhbHVlT2YgPSBmdW5jdGlvbigpIHsgcmV0dXJu
IDI7IH0KKyAgICAgICAgcmV0dXJuIGpzb25PYmplY3Quc3RyaW5naWZ5KHZhbHVlKTsKKyAgICB9
CitQQVNTIHRlc3RzW2ldKG5hdGl2ZUpTT04pIGlzIHRlc3RzW2ldLmV4cGVjdGVkCiBmdW5jdGlv
biAoanNvbk9iamVjdCkgewogICAgICAgICByZXR1cm4ganNvbk9iamVjdC5zdHJpbmdpZnkodHJ1
ZSk7CiAgICAgfQpAQCAtMTk5LDYgKzIwNywyMiBAQCBmdW5jdGlvbiAoanNvbk9iamVjdCkgewog
ICAgIH0KIFBBU1MgdGVzdHNbaV0obmF0aXZlSlNPTikgaXMgdGVzdHNbaV0oSlNPTikKIGZ1bmN0
aW9uIChqc29uT2JqZWN0KSB7CisgICAgICAgIHJldHVybiBqc29uT2JqZWN0LnN0cmluZ2lmeShz
aW1wbGVPYmplY3QsIG51bGwsIDEwKTsKKyAgICB9CitQQVNTIHRlc3RzW2ldKG5hdGl2ZUpTT04p
IGlzIHRlc3RzW2ldKEpTT04pCitmdW5jdGlvbiAoanNvbk9iamVjdCkgeworICAgICAgICByZXR1
cm4ganNvbk9iamVjdC5zdHJpbmdpZnkoc2ltcGxlT2JqZWN0LCBudWxsLCAxMSk7CisgICAgfQor
UEFTUyB0ZXN0c1tpXShuYXRpdmVKU09OKSBpcyB0ZXN0c1tpXS5leHBlY3RlZAorZnVuY3Rpb24g
KGpzb25PYmplY3QpIHsKKyAgICAgICAgcmV0dXJuIGpzb25PYmplY3Quc3RyaW5naWZ5KHNpbXBs
ZU9iamVjdCwgbnVsbCwgIiAgICAgICAgICAiKTsKKyAgICB9CitQQVNTIHRlc3RzW2ldKG5hdGl2
ZUpTT04pIGlzIHRlc3RzW2ldLmV4cGVjdGVkCitmdW5jdGlvbiAoanNvbk9iamVjdCkgeworICAg
ICAgICByZXR1cm4ganNvbk9iamVjdC5zdHJpbmdpZnkoc2ltcGxlT2JqZWN0LCBudWxsLCAiICAg
ICAgICAgICAiKTsKKyAgICB9CitQQVNTIHRlc3RzW2ldKG5hdGl2ZUpTT04pIGlzIHRlc3RzW2ld
LmV4cGVjdGVkCitmdW5jdGlvbiAoanNvbk9iamVjdCkgewogICAgICAgICByZXR1cm4ganNvbk9i
amVjdC5zdHJpbmdpZnkoY29tcGxleEFycmF5LCBudWxsLCAiICAiKTsKICAgICB9CiBQQVNTIHRl
c3RzW2ldKG5hdGl2ZUpTT04pIGlzIHRlc3RzW2ldKEpTT04pCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2pzL3Jlc291cmNlcy9KU09OLXN0cmluZ2lmeS5qcyBiL0xheW91dFRlc3RzL2Zh
c3QvanMvcmVzb3VyY2VzL0pTT04tc3RyaW5naWZ5LmpzCmluZGV4IDU2NzMzNGIuLjliM2UxYjcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvcmVzb3VyY2VzL0pTT04tc3RyaW5naWZ5
LmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvcmVzb3VyY2VzL0pTT04tc3RyaW5naWZ5Lmpz
CkBAIC00NSw4ICs0NSwxNyBAQCBmdW5jdGlvbiBjcmVhdGVUZXN0cygpIHsKICAgICAgICAgcmV0
dXJuIGpzb25PYmplY3Quc3RyaW5naWZ5KG5ldyBCb29sZWFuKHRydWUpKTsKICAgICB9KTsKICAg
ICByZXN1bHQucHVzaChmdW5jdGlvbihqc29uT2JqZWN0KXsKLSAgICAgICAgcmV0dXJuIGpzb25P
YmplY3Quc3RyaW5naWZ5KG5ldyBCb29sZWFuKGZhbHNlKSk7CisgICAgICAgIHZhciB2YWx1ZSA9
IG5ldyBOdW1iZXIoMSk7CisgICAgICAgIHZhbHVlLnZhbHVlT2YgPSBmdW5jdGlvbigpIHsgcmV0
dXJuIDI7IH0KKyAgICAgICAgcmV0dXJuIGpzb25PYmplY3Quc3RyaW5naWZ5KHZhbHVlKTsKICAg
ICB9KTsKKyAgICByZXN1bHRbcmVzdWx0Lmxlbmd0aCAtIDFdLmV4cGVjdGVkID0gJzInOworICAg
IHJlc3VsdC5wdXNoKGZ1bmN0aW9uKGpzb25PYmplY3QpeworICAgICAgICB2YXIgdmFsdWUgPSBu
ZXcgQm9vbGVhbih0cnVlKTsKKyAgICAgICAgdmFsdWUudmFsdWVPZiA9IGZ1bmN0aW9uKCkgeyBy
ZXR1cm4gMjsgfQorICAgICAgICByZXR1cm4ganNvbk9iamVjdC5zdHJpbmdpZnkodmFsdWUpOwor
ICAgIH0pOworICAgIHJlc3VsdFtyZXN1bHQubGVuZ3RoIC0gMV0uZXhwZWN0ZWQgPSAnMic7CiAg
ICAgcmVzdWx0LnB1c2goZnVuY3Rpb24oanNvbk9iamVjdCl7CiAgICAgICAgIHJldHVybiBqc29u
T2JqZWN0LnN0cmluZ2lmeSh0cnVlKTsKICAgICB9KTsKQEAgLTE2Nyw2ICsxNzYsMjEgQEAgZnVu
Y3Rpb24gY3JlYXRlVGVzdHMoKSB7CiAgICAgICAgIHJldHVybiBqc29uT2JqZWN0LnN0cmluZ2lm
eShzaW1wbGVPYmplY3QsIG51bGwsIDQpOwogICAgIH0pOwogICAgIHJlc3VsdC5wdXNoKGZ1bmN0
aW9uKGpzb25PYmplY3QpeworICAgICAgICByZXR1cm4ganNvbk9iamVjdC5zdHJpbmdpZnkoc2lt
cGxlT2JqZWN0LCBudWxsLCAxMCk7CisgICAgfSk7CisgICAgcmVzdWx0LnB1c2goZnVuY3Rpb24o
anNvbk9iamVjdCl7CisgICAgICAgIHJldHVybiBqc29uT2JqZWN0LnN0cmluZ2lmeShzaW1wbGVP
YmplY3QsIG51bGwsIDExKTsKKyAgICB9KTsKKyAgICByZXN1bHRbcmVzdWx0Lmxlbmd0aCAtIDFd
LmV4cGVjdGVkID0gSlNPTi5zdHJpbmdpZnkoc2ltcGxlT2JqZWN0LCBudWxsLCAxMCk7CisgICAg
cmVzdWx0LnB1c2goZnVuY3Rpb24oanNvbk9iamVjdCl7CisgICAgICAgIHJldHVybiBqc29uT2Jq
ZWN0LnN0cmluZ2lmeShzaW1wbGVPYmplY3QsIG51bGwsICIgICAgICAgICAgIik7CisgICAgfSk7
CisgICAgcmVzdWx0W3Jlc3VsdC5sZW5ndGggLSAxXS5leHBlY3RlZCA9IEpTT04uc3RyaW5naWZ5
KHNpbXBsZU9iamVjdCwgbnVsbCwgMTApOworICAgIHJlc3VsdC5wdXNoKGZ1bmN0aW9uKGpzb25P
YmplY3QpeworICAgICAgICByZXR1cm4ganNvbk9iamVjdC5zdHJpbmdpZnkoc2ltcGxlT2JqZWN0
LCBudWxsLCAiICAgICAgICAgICAiKTsKKyAgICB9KTsKKyAgICByZXN1bHRbcmVzdWx0Lmxlbmd0
aCAtIDFdLmV4cGVjdGVkID0gSlNPTi5zdHJpbmdpZnkoc2ltcGxlT2JqZWN0LCBudWxsLCAxMCk7
CisgICAgcmVzdWx0LnB1c2goZnVuY3Rpb24oanNvbk9iamVjdCl7CiAgICAgICAgIHJldHVybiBq
c29uT2JqZWN0LnN0cmluZ2lmeShjb21wbGV4QXJyYXksIG51bGwsICIgICIpOwogICAgIH0pOwog
ICAgIHJlc3VsdC5wdXNoKGZ1bmN0aW9uKGpzb25PYmplY3QpewpAQCAtMzcxLDkgKzM5NSw5IEBA
IGZvciAodmFyIGkgPSAwOyBpIDwgdGVzdHMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgaWYgKHRl
c3RzW2ldLnRocm93cykKICAgICAgICAgICAgIHNob3VsZFRocm93KCd0ZXN0c1tpXShuYXRpdmVK
U09OKScpOwogICAgICAgICBlbHNlIGlmICh0ZXN0c1tpXS5leHBlY3RlZCkKLSAgICAgICAgICAg
IHNob3VsZEJlKCd0ZXN0c1tpXShuYXRpdmVKU09OKScsICAndGVzdHNbaV0uZXhwZWN0ZWQnKQor
ICAgICAgICAgICAgc2hvdWxkQmUoJ3Rlc3RzW2ldKG5hdGl2ZUpTT04pJywgICJ0ZXN0c1tpXS5l
eHBlY3RlZCIpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBzaG91bGRCZSgndGVzdHNbaV0o
bmF0aXZlSlNPTiknLCAgJ3Rlc3RzW2ldKEpTT04pJyk7CisgICAgICAgICAgICBzaG91bGRCZSgn
dGVzdHNbaV0obmF0aXZlSlNPTiknLCAgInRlc3RzW2ldKEpTT04pIik7CiAgICAgfWNhdGNoKGUp
e30KIH0KIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
</data>
<flag name="review"
          id="19712"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>