<?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>112377</bug_id>
          
          <creation_ts>2013-03-14 12:23:44 -0700</creation_ts>
          <short_desc>Objective-C API: Nested dictionaries are not converted properly in the Objective-C binding</short_desc>
          <delta_ts>2013-03-14 13:17:15 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>ggaren</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>855414</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-03-14 12:23:44 -0700</bug_when>
    <thetext>&quot;Given an objective-C method like the following, exposed into JS via the new Objective-C interface:

- (void)handleTheDictionary:(NSDictionary *)myDict;

And a JS dictionary and call like so:

myDict = {
    &quot;foo&quot; = 1,
    &quot;bar&quot; = { &quot;baz&quot; : 2 }
}

handleTheDictionary(myDict);

The dictionary received by objective c will actually only be:

{ &quot;baz&quot;: 2 }.

Further investigations show that only the deepest dictionary is used.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855415</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-03-14 12:23:54 -0700</bug_when>
    <thetext>&lt;rdar://problem/13422001&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855422</commentid>
    <comment_count>2</comment_count>
      <attachid>193172</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-03-14 12:30:10 -0700</bug_when>
    <thetext>Created attachment 193172
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855444</commentid>
    <comment_count>3</comment_count>
      <attachid>193172</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-14 13:17:12 -0700</bug_when>
    <thetext>Comment on attachment 193172
Patch

Clearing flags on attachment: 193172

Committed r145842: &lt;http://trac.webkit.org/changeset/145842&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855445</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-14 13:17:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193172</attachid>
            <date>2013-03-14 12:30:10 -0700</date>
            <delta_ts>2013-03-14 13:17:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112377-20130314122606.patch</filename>
            <type>text/plain</type>
            <size>2990</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ1ODM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBA
CisyMDEzLTAzLTE0ICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisK
KyAgICAgICAgT2JqZWN0aXZlLUMgQVBJOiBOZXN0ZWQgZGljdGlvbmFyaWVzIGFyZSBub3QgY29u
dmVydGVkIHByb3Blcmx5IGluIHRoZSBPYmplY3RpdmUtQyBiaW5kaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIzNzcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NpZGVudGFsIHJlYXNzaWdubWVu
dCBvZiB0aGUgcm9vdCB0YXNrIGluIHRoZSBjb250YWluZXIgY29udmVyc2lvbiBsb2dpYyB3YXMg
Y2F1c2luZyB0aGUgbGFzdCAKKyAgICAgICAgYXJyYXkgb3IgZGljdGlvbmFyeSBwcm9jZXNzZWQg
dG8gYmUgcmV0dXJuZWQgaW4gdGhlIGNhc2Ugb2YgbmVzdGVkIGNvbnRhaW5lcnMuCisKKyAgICAg
ICAgKiBBUEkvSlNWYWx1ZS5tbToKKyAgICAgICAgKGNvbnRhaW5lclZhbHVlVG9PYmplY3QpOgor
ICAgICAgICAqIEFQSS90ZXN0cy90ZXN0YXBpLm1tOgorCiAyMDEzLTAzLTEzICBGaWxpcCBQaXps
byAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgREZHIGJ5dGVjb2RlIHBhcnNlciBpcyB0
b28gYWdncmVzc2l2ZSBhYm91dCBnZXR0aW5nIHJpZCBvZiBHZXRMb2NhbHMgb24gY2FwdHVyZWQg
dmFyaWFibGVzCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlLm1tCShyZXZpc2lv
biAxNDU4MzMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0JKHdvcmtp
bmcgY29weSkKQEAgLTY3MSw3ICs2NzEsNyBAQCBzdGF0aWMgaWQgY29udGFpbmVyVmFsdWVUb09i
amVjdChKU0dsb2JhCiAgICAgQVNTRVJUKCFjb252ZXJ0b3IuaXNXb3JrTGlzdEVtcHR5KCkpOwog
ICAgIAogICAgIGRvIHsKLSAgICAgICAgSlNDb250YWluZXJDb252ZXJ0b3I6OlRhc2sgY3VycmVu
dCA9IHRhc2sgPSBjb252ZXJ0b3IudGFrZSgpOworICAgICAgICBKU0NvbnRhaW5lckNvbnZlcnRv
cjo6VGFzayBjdXJyZW50ID0gY29udmVydG9yLnRha2UoKTsKICAgICAgICAgQVNTRVJUKEpTVmFs
dWVJc09iamVjdChjb250ZXh0LCBjdXJyZW50LmpzKSk7CiAgICAgICAgIEpTT2JqZWN0UmVmIGpz
ID0gSlNWYWx1ZVRvT2JqZWN0KGNvbnRleHQsIGN1cnJlbnQuanMsIDApOwogCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGkubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy90ZXN0YXBpLm1tCShyZXZpc2lvbiAxNDU4MzMp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGkubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTUyOSw2ICs1MjksMzAgQEAgdm9pZCB0ZXN0T2JqZWN0aXZlQ0FQSSgpCiAKICAg
ICBAYXV0b3JlbGVhc2Vwb29sIHsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW1tKU0Nv
bnRleHQgYWxsb2NdIGluaXRdOworICAgICAgICBjb250ZXh0W0AiaGFuZGxlVGhlRGljdGlvbmFy
eSJdID0gXihOU0RpY3Rpb25hcnkgKmRpY3QpIHsKKyAgICAgICAgICAgIE5TRGljdGlvbmFyeSAq
ZXhwZWN0ZWREaWN0ID0gQHsKKyAgICAgICAgICAgICAgICBAImZvbyIgOiBbTlNOdW1iZXIgbnVt
YmVyV2l0aEludDoxXSwKKyAgICAgICAgICAgICAgICBAImJhciIgOiBAeworICAgICAgICAgICAg
ICAgICAgICBAImJheiI6IFtOU051bWJlciBudW1iZXJXaXRoSW50OjJdCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgfTsKKyAgICAgICAgICAgIGNoZWNrUmVzdWx0KEAicmVjdXJzaXZl
bHkgY29udmVydCBuZXN0ZWQgZGljdGlvbmFyaWVzIiwgW2RpY3QgaXNFcXVhbFRvRGljdGlvbmFy
eTpleHBlY3RlZERpY3RdKTsKKyAgICAgICAgfTsKKyAgICAgICAgW2NvbnRleHQgZXZhbHVhdGVT
Y3JpcHQ6QCJ2YXIgbXlEaWN0ID0geyBcCisgICAgICAgICAgICAnZm9vJzogMSwgXAorICAgICAg
ICAgICAgJ2Jhcic6IHsnYmF6JzogMn0gXAorICAgICAgICB9OyBcCisgICAgICAgIGhhbmRsZVRo
ZURpY3Rpb25hcnkobXlEaWN0KTsiXTsKKworICAgICAgICBjb250ZXh0W0AiaGFuZGxlVGhlQXJy
YXkiXSA9IF4oTlNBcnJheSAqYXJyYXkpIHsKKyAgICAgICAgICAgIE5TQXJyYXkgKmV4cGVjdGVk
QXJyYXkgPSBAW0AiZm9vIiwgQCJiYXIiLCBAW0AiYmF6Il1dOworICAgICAgICAgICAgY2hlY2tS
ZXN1bHQoQCJyZWN1cnNpdmVseSBjb252ZXJ0IG5lc3RlZCBhcnJheXMiLCBbYXJyYXkgaXNFcXVh
bFRvQXJyYXk6ZXhwZWN0ZWRBcnJheV0pOworICAgICAgICB9OworICAgICAgICBbY29udGV4dCBl
dmFsdWF0ZVNjcmlwdDpAInZhciBteUFycmF5ID0gWydmb28nLCAnYmFyJywgWydiYXonXV07IGhh
bmRsZVRoZUFycmF5KG15QXJyYXkpOyJdOworICAgIH0KKworICAgIEBhdXRvcmVsZWFzZXBvb2wg
eworICAgICAgICBKU0NvbnRleHQgKmNvbnRleHQgPSBbW0pTQ29udGV4dCBhbGxvY10gaW5pdF07
CiAgICAgICAgIFRleHRYWVogKnRlc3RYWVogPSBbW1RleHRYWVogYWxsb2NdIGluaXRdOwogCiAg
ICAgICAgIEBhdXRvcmVsZWFzZXBvb2wgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>