<?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>22880</bug_id>
          
          <creation_ts>2008-12-16 10:51:11 -0800</creation_ts>
          <short_desc>Convert javascript Number Object or Boolean Object to Qt types in QtWebKit.</short_desc>
          <delta_ts>2008-12-19 02:44:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</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>0</everconfirmed>
          <reporter name="jade han">jade.han</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hausmann</cc>
    
    <cc>vestbo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>102675</commentid>
    <comment_count>0</comment_count>
    <who name="jade han">jade.han</who>
    <bug_when>2008-12-16 10:51:11 -0800</bug_when>
    <thetext>Convert javascript built-in Number Object to double in Qt; Convert javascript built-in Boolean Object to bool in Qt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102678</commentid>
    <comment_count>1</comment_count>
      <attachid>26056</attachid>
    <who name="jade han">jade.han</who>
    <bug_when>2008-12-16 11:10:30 -0800</bug_when>
    <thetext>Created attachment 26056
This patch implements the feature</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102875</commentid>
    <comment_count>2</comment_count>
      <attachid>26056</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2008-12-18 05:35:11 -0800</bug_when>
    <thetext>Comment on attachment 26056
This patch implements the feature

&gt; +    // if hint is const QVariant&amp; and type is Object, 
&gt; +    // because the visitedObjects check at the beginging of this function,
&gt; +    // make sure it&apos;s handled as QVariantMap upon the first time entering this function
&gt; +    if (hint == (QMetaType::Type) qMetaTypeId&lt;QVariant&gt;() &amp;&amp; type == Object)
&gt; +        hint = QMetaType::QVariantMap;

I think we should remove the object from the visitedObjects when recursing with the auto-detect flag instead.

&gt;          case QMetaType::QVariantMap: 
&gt; +                // Javascript built-in Number and Boolean object don&apos;t have properties,
&gt; +                // convert them to double and bool respectively

Some auto-tests for this would be nice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102885</commentid>
    <comment_count>3</comment_count>
      <attachid>26120</attachid>
    <who name="jade han">jade.han</who>
    <bug_when>2008-12-18 08:05:46 -0800</bug_when>
    <thetext>Created attachment 26120
Removes changes under QVariantMap hint; redirect to Qt bool and double hint respectively in the autoswitch; remove object from visited array before recursive call</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>102972</commentid>
    <comment_count>4</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2008-12-19 02:43:38 -0800</bug_when>
    <thetext>Thanks! Landed in r39399</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26056</attachid>
            <date>2008-12-16 11:10:30 -0800</date>
            <delta_ts>2008-12-18 08:05:46 -0800</delta_ts>
            <desc>This patch implements the feature</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>8076</size>
            <attacher name="jade han">jade.han</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTMzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMDgtMTItMTYgIEphZGUgSGFuICA8amFkZS5oYW5Abm9raWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByb3Zp
ZCBwcm9wZXIgaGFuZGxpbmcgd2hlbiBjb252ZXJ0aW5nIGZyb20gamF2YXNjcmlwdCBOdW1iZXIg
T2JqZWN0IG9yIEJvb2xlYW4gT2JqZWN0IHRvIFF0IHR5cGVzIGluIFF0V2ViS2l0LgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg4MAorCisgICAg
ICAgICogYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6
Y29udmVydFZhbHVlVG9RVmFyaWFudCk6CisKIDIwMDgtMTItMTYgWWFlbCBBaGFyb24gPHlhZWwu
YWhhcm9uQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4
LgpJbmRleDogV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAJKHJldmlzaW9uIDM5MzM1KQorKysgV2Vi
Q29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2
LDcgQEAKICNpbmNsdWRlIDxydW50aW1lLmg+CiAjaW5jbHVkZSA8cnVudGltZV9hcnJheS5oPgog
I2luY2x1ZGUgPHJ1bnRpbWVfb2JqZWN0Lmg+CisjaW5jbHVkZSAiQm9vbGVhbk9iamVjdC5oIgog
CiAvLyBRdFNjcmlwdCBoYXMgdGhlc2UKIFFfREVDTEFSRV9NRVRBVFlQRShRT2JqZWN0TGlzdCk7
CkBAIC0xOTEsNiArMTkyLDEyIEBAIFFWYXJpYW50IGNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQoRXhl
Y1N0YXQKICAgICAgICAgfQogICAgIH0KIAorICAgIC8vIGlmIGhpbnQgaXMgY29uc3QgUVZhcmlh
bnQmIGFuZCB0eXBlIGlzIE9iamVjdCwgCisgICAgLy8gYmVjYXVzZSB0aGUgdmlzaXRlZE9iamVj
dHMgY2hlY2sgYXQgdGhlIGJlZ2luZ2luZyBvZiB0aGlzIGZ1bmN0aW9uLAorICAgIC8vIG1ha2Ug
c3VyZSBpdCdzIGhhbmRsZWQgYXMgUVZhcmlhbnRNYXAgdXBvbiB0aGUgZmlyc3QgdGltZSBlbnRl
cmluZyB0aGlzIGZ1bmN0aW9uCisgICAgaWYgKGhpbnQgPT0gKFFNZXRhVHlwZTo6VHlwZSkgcU1l
dGFUeXBlSWQ8UVZhcmlhbnQ+KCkgJiYgdHlwZSA9PSBPYmplY3QpCisgICAgICAgIGhpbnQgPSBR
TWV0YVR5cGU6OlFWYXJpYW50TWFwOworCiAgICAgcUNvbnZEZWJ1ZygpIDw8ICJjb252ZXJ0VmFs
dWVUb1FWYXJpYW50OiBqc3R5cGUgaXMgIiA8PCB0eXBlIDw8ICIsIGhpbnQgaXMiIDw8IGhpbnQ7
CiAKICAgICBpZiAodmFsdWUgPT0ganNOdWxsKCkKQEAgLTIwNyw3ICsyMTQsMTAgQEAgUVZhcmlh
bnQgY29udmVydFZhbHVlVG9RVmFyaWFudChFeGVjU3RhdAogICAgIGludCBkaXN0ID0gLTE7CiAg
ICAgc3dpdGNoIChoaW50KSB7CiAgICAgICAgIGNhc2UgUU1ldGFUeXBlOjpCb29sOgotICAgICAg
ICAgICAgcmV0ID0gUVZhcmlhbnQodmFsdWUtPnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgICAg
ICBpZiAodHlwZSA9PSBPYmplY3QgJiYgb2JqZWN0LT5pbmhlcml0cygmQm9vbGVhbk9iamVjdDo6
aW5mbykpCisgICAgICAgICAgICAgICAgcmV0ID0gUVZhcmlhbnQoYXNCb29sZWFuT2JqZWN0KHZh
bHVlKS0+aW50ZXJuYWxWYWx1ZSgpLT50b0Jvb2xlYW4oZXhlYykpOworICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgIHJldCA9IFFWYXJpYW50KHZhbHVlLT50b0Jvb2xlYW4oZXhlYykp
OwogICAgICAgICAgICAgaWYgKHR5cGUgPT0gQm9vbGVhbikKICAgICAgICAgICAgICAgICBkaXN0
ID0gMDsKICAgICAgICAgICAgIGVsc2UKQEAgLTI5NSwyNyArMzA1LDM4IEBAIFFWYXJpYW50IGNv
bnZlcnRWYWx1ZVRvUVZhcmlhbnQoRXhlY1N0YXQKIAogICAgICAgICBjYXNlIFFNZXRhVHlwZTo6
UVZhcmlhbnRNYXA6IAogICAgICAgICAgICAgaWYgKHR5cGUgPT0gT2JqZWN0IHx8IHR5cGUgPT0g
QXJyYXkgfHwgdHlwZSA9PSBSVEFycmF5KSB7Ci0gICAgICAgICAgICAgICAgLy8gRW51bWVyYXRl
IHRoZSBjb250ZW50cyBvZiB0aGUgb2JqZWN0Ci0gICAgICAgICAgICAgICAgUHJvcGVydHlOYW1l
QXJyYXkgcHJvcGVydGllcyhleGVjKTsKLSAgICAgICAgICAgICAgICBvYmplY3QtPmdldFByb3Bl
cnR5TmFtZXMoZXhlYywgcHJvcGVydGllcyk7Ci0gICAgICAgICAgICAgICAgUHJvcGVydHlOYW1l
QXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcHJvcGVydGllcy5iZWdpbigpOwotCi0gICAgICAg
ICAgICAgICAgUVZhcmlhbnRNYXAgcmVzdWx0OwotICAgICAgICAgICAgICAgIGludCBvYmpkaXN0
ID0gMDsKLSAgICAgICAgICAgICAgICB3aGlsZShpdCAhPSBwcm9wZXJ0aWVzLmVuZCgpKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIGlmIChvYmplY3QtPnByb3BlcnR5SXNFbnVtZXJhYmxlKGV4ZWMs
ICppdCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIEpTVmFsdWUqIHZhbCA9IG9iamVjdC0+
Z2V0KGV4ZWMsICppdCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBRVmFyaWFudCB2ID0gY29u
dmVydFZhbHVlVG9RVmFyaWFudChleGVjLCB2YWwsIFFNZXRhVHlwZTo6Vm9pZCwgJm9iamRpc3Qs
IHZpc2l0ZWRPYmplY3RzKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvYmpkaXN0ID49
IDApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBVU3RyaW5nIHVzdHJpbmcgPSAoKml0
KS51c3RyaW5nKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUVN0cmluZyBpZCA9IFFT
dHJpbmc6OmZyb21VdGYxNigoY29uc3QgdXNob3J0Kil1c3RyaW5nLnJlcCgpLT5kYXRhKCksdXN0
cmluZy5zaXplKCkpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5pbnNlcnQo
aWQsIHYpOworICAgICAgICAgICAgICAgIC8vIEphdmFzY3JpcHQgYnVpbHQtaW4gTnVtYmVyIGFu
ZCBCb29sZWFuIG9iamVjdCBkb24ndCBoYXZlIHByb3BlcnRpZXMsCisgICAgICAgICAgICAgICAg
Ly8gY29udmVydCB0aGVtIHRvIGRvdWJsZSBhbmQgYm9vbCByZXNwZWN0aXZlbHkKKyAgICAgICAg
ICAgICAgICBpZiAodHlwZSA9PSBPYmplY3QgJiYgb2JqZWN0LT5pbmhlcml0cygmTnVtYmVyT2Jq
ZWN0OjppbmZvKSkgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0ID0gUVZhcmlhbnQodmFsdWUt
PnRvTnVtYmVyKGV4ZWMpKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0LmNvbnZlcnQoKFFWYXJp
YW50OjpUeXBlKVFNZXRhVHlwZTo6RG91YmxlKTsKKyAgICAgICAgICAgICAgICAgICAgZGlzdCA9
IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlID09IE9iamVjdCAmJiBvYmplY3Qt
PmluaGVyaXRzKCZCb29sZWFuT2JqZWN0OjppbmZvKSkgeworICAgICAgICAgICAgICAgICAgICBy
ZXQgPSBRVmFyaWFudChhc0Jvb2xlYW5PYmplY3QodmFsdWUpLT5pbnRlcm5hbFZhbHVlKCktPnRv
Qm9vbGVhbihleGVjKSk7CisgICAgICAgICAgICAgICAgICAgIGRpc3QgPSAwOworICAgICAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIC8vIEVudW1lcmF0ZSB0aGUgY29u
dGVudHMgb2YgdGhlIG9iamVjdAorICAgICAgICAgICAgICAgICAgICBQcm9wZXJ0eU5hbWVBcnJh
eSBwcm9wZXJ0aWVzKGV4ZWMpOworICAgICAgICAgICAgICAgICAgICBvYmplY3QtPmdldFByb3Bl
cnR5TmFtZXMoZXhlYywgcHJvcGVydGllcyk7CisgICAgICAgICAgICAgICAgICAgIFByb3BlcnR5
TmFtZUFycmF5Ojpjb25zdF9pdGVyYXRvciBpdCA9IHByb3BlcnRpZXMuYmVnaW4oKTsKKyAgICAK
KyAgICAgICAgICAgICAgICAgICAgUVZhcmlhbnRNYXAgcmVzdWx0OworICAgICAgICAgICAgICAg
ICAgICBpbnQgb2JqZGlzdCA9IDA7CisgICAgICAgICAgICAgICAgICAgIHdoaWxlKGl0ICE9IHBy
b3BlcnRpZXMuZW5kKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvYmplY3QtPnBy
b3BlcnR5SXNFbnVtZXJhYmxlKGV4ZWMsICppdCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBKU1ZhbHVlKiB2YWwgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFFWYXJpYW50IHYgPSBjb252ZXJ0VmFsdWVUb1FWYXJpYW50KGV4ZWMs
IHZhbCwgUU1ldGFUeXBlOjpWb2lkLCAmb2JqZGlzdCwgdmlzaXRlZE9iamVjdHMpOworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGlmIChvYmpkaXN0ID49IDApIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgVVN0cmluZyB1c3RyaW5nID0gKCppdCkudXN0cmluZygpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRU3RyaW5nIGlkID0gUVN0cmluZzo6ZnJvbVV0
ZjE2KChjb25zdCB1c2hvcnQqKXVzdHJpbmcucmVwKCktPmRhdGEoKSx1c3RyaW5nLnNpemUoKSk7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5pbnNlcnQoaWQsIHYpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICAgICAgICAgICsraXQ7CiAgICAgICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICAgICAgKytpdDsKKyAgICAgICAgICAgICAgICAgICAgZGlzdCA9IDE7Cisg
ICAgICAgICAgICAgICAgICAgIHJldCA9IFFWYXJpYW50KHJlc3VsdCk7CiAgICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIGRpc3QgPSAxOwotICAgICAgICAgICAgICAgIHJldCA9IFFW
YXJpYW50KHJlc3VsdCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKIApJbmRl
eDogV2ViS2l0L3F0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTMzNSkKKysrIFdlYktpdC9xdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkK
QEAgLTEsMyArMSwxNCBAQAorMjAwOC0xMi0xNiAgSmFkZSBIYW4gIDxqYWRlLmhhbkBub2tpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJv
dmlkIHByb3BlciBoYW5kbGluZyB3aGVuIGNvbnZlcnRpbmcgZnJvbSBqYXZhc2NyaXB0IE51bWJl
ciBPYmplY3Qgb3IgQm9vbGVhbiBPYmplY3QgdG8gUXQgdHlwZXMgaW4gUXRXZWJLaXQuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODgwCisKKyAg
ICAgICAgKiB0ZXN0cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHA6CisgICAgICAgIChNeVFP
YmplY3Q6Om15SW52b2thYmxlV2l0aEJvb2xBcmcpOgorCiAyMDA4LTEyLTE1ICBIb2xnZXIgSGFu
cyBQZXRlciBGcmV5dGhlciAgPHplY2tlQHNlbGZpc2gub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IFNpbW9uIEhhdXNtYW5uLgpJbmRleDogV2ViS2l0L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3Rf
cXdlYmZyYW1lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvdGVzdHMvcXdlYmZyYW1lL3Rz
dF9xd2ViZnJhbWUuY3BwCShyZXZpc2lvbiAzOTMzNSkKKysrIFdlYktpdC9xdC90ZXN0cy9xd2Vi
ZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1OSw2ICszNTksMTAg
QEAgcHVibGljOgogICAgICAgICBjb25zdF9jYXN0PE15UU9iamVjdCo+KHRoaXMpLT5tX3F0RnVu
Y3Rpb25JbnZva2VkID0gNTE7CiAgICAgICAgIG1fYWN0dWFscyA8PCBxVmFyaWFudEZyb21WYWx1
ZShhcmcpOwogICAgIH0KKyAgICBRX0lOVk9LQUJMRSB2b2lkIG15SW52b2thYmxlV2l0aEJvb2xB
cmcoYm9vbCBhcmcpIHsKKyAgICAgICAgbV9xdEZ1bmN0aW9uSW52b2tlZCA9IDUyOworICAgICAg
ICBtX2FjdHVhbHMgPDwgYXJnOworICAgIH0KIAogICAgIHZvaWQgZW1pdE15U2lnbmFsKCkgewog
ICAgICAgICBlbWl0IG15U2lnbmFsKCk7CkBAIC03ODQsNiArNzg4LDE0IEBAIHZvaWQgdHN0X1FX
ZWJGcmFtZTo6Z2V0U2V0U3RhdGljUHJvcGVydHkKICAgICBRQ09NUEFSRShldmFsSlMoIm15T2Jq
ZWN0LnN0cmluZ1Byb3BlcnR5IiksIFFTdHJpbmcoKSk7CiAgICAgUUNPTVBBUkUobV9teU9iamVj
dC0+c3RyaW5nUHJvcGVydHkoKSwgUVN0cmluZygpKTsKIAorICAgIFFDT01QQVJFKGV2YWxKUygi
bXlPYmplY3QudmFyaWFudFByb3BlcnR5ID0gbmV3IE51bWJlcigxMjM0KTsiCisgICAgICAgICAg
ICAgICAgICAgICJteU9iamVjdC52YXJpYW50UHJvcGVydHkiKS50b0RvdWJsZSgpLCAxMjM0LjAp
OworICAgIFFDT01QQVJFKG1fbXlPYmplY3QtPnZhcmlhbnRQcm9wZXJ0eSgpLnRvRG91YmxlKCks
IDEyMzQuMCk7CisKKyAgICBRQ09NUEFSRShldmFsSlMoIm15T2JqZWN0LnZhcmlhbnRQcm9wZXJ0
eSA9IG5ldyBCb29sZWFuKDEyMzQpOyIKKyAgICAgICAgICAgICAgICAgICAgIm15T2JqZWN0LnZh
cmlhbnRQcm9wZXJ0eSIpLCBzVHJ1ZSk7CisgICAgUUNPTVBBUkUobV9teU9iamVjdC0+dmFyaWFu
dFByb3BlcnR5KCkudG9Cb29sKCksIHRydWUpOworCiAgICAgUUNPTVBBUkUoZXZhbEpTKCJteU9i
amVjdC52YXJpYW50UHJvcGVydHkgPSBudWxsOyIKICAgICAgICAgICAgICAgICAgICAgIm15T2Jq
ZWN0LnZhcmlhbnRQcm9wZXJ0eS52YWx1ZU9mKCkiKSwgc1VuZGVmaW5lZCk7CiAgICAgUUNPTVBB
UkUobV9teU9iamVjdC0+dmFyaWFudFByb3BlcnR5KCksIFFWYXJpYW50KCkpOwpAQCAtOTYxLDYg
Kzk3MywxOCBAQCB2b2lkIHRzdF9RV2ViRnJhbWU6OmNhbGxRdEludm9rYWJsZSgpCiAgICAgUUNP
TVBBUkUobV9teU9iamVjdC0+cXRGdW5jdGlvbkFjdHVhbHMoKS5hdCgwKS50b0RvdWJsZSgpLCAx
MjMuNSk7CiAKICAgICBtX215T2JqZWN0LT5yZXNldFF0RnVuY3Rpb25JbnZva2VkKCk7CisgICAg
UUNPTVBBUkUoZXZhbEpTKCJ0eXBlb2YgbXlPYmplY3QubXlJbnZva2FibGVXaXRoRG91YmxlQXJn
KG5ldyBOdW1iZXIoMTIzNC41KSkiKSwgc1VuZGVmaW5lZCk7CisgICAgUUNPTVBBUkUobV9teU9i
amVjdC0+cXRGdW5jdGlvbkludm9rZWQoKSwgNCk7CisgICAgUUNPTVBBUkUobV9teU9iamVjdC0+
cXRGdW5jdGlvbkFjdHVhbHMoKS5zaXplKCksIDEpOworICAgIFFDT01QQVJFKG1fbXlPYmplY3Qt
PnF0RnVuY3Rpb25BY3R1YWxzKCkuYXQoMCkudG9Eb3VibGUoKSwgMTIzNC41KTsKKworICAgIG1f
bXlPYmplY3QtPnJlc2V0UXRGdW5jdGlvbkludm9rZWQoKTsKKyAgICBRQ09NUEFSRShldmFsSlMo
InR5cGVvZiBteU9iamVjdC5teUludm9rYWJsZVdpdGhCb29sQXJnKG5ldyBCb29sZWFuKHRydWUp
KSIpLCBzVW5kZWZpbmVkKTsKKyAgICBRQ09NUEFSRShtX215T2JqZWN0LT5xdEZ1bmN0aW9uSW52
b2tlZCgpLCA1Mik7CisgICAgUUNPTVBBUkUobV9teU9iamVjdC0+cXRGdW5jdGlvbkFjdHVhbHMo
KS5zaXplKCksIDEpOworICAgIFFDT01QQVJFKG1fbXlPYmplY3QtPnF0RnVuY3Rpb25BY3R1YWxz
KCkuYXQoMCkudG9Cb29sKCksIHRydWUpOworCisgICAgbV9teU9iamVjdC0+cmVzZXRRdEZ1bmN0
aW9uSW52b2tlZCgpOwogICAgIFFDT01QQVJFKGV2YWxKUygidHlwZW9mIG15T2JqZWN0Lm15SW52
b2thYmxlV2l0aFN0cmluZ0FyZygnY2lhbycpIiksIHNVbmRlZmluZWQpOwogICAgIFFDT01QQVJF
KG1fbXlPYmplY3QtPnF0RnVuY3Rpb25JbnZva2VkKCksIDUpOwogICAgIFFDT01QQVJFKG1fbXlP
YmplY3QtPnF0RnVuY3Rpb25BY3R1YWxzKCkuc2l6ZSgpLCAxKTsK
</data>
<flag name="review"
          id="12281"
          type_id="1"
          status="-"
          setter="vestbo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26120</attachid>
            <date>2008-12-18 08:05:46 -0800</date>
            <delta_ts>2008-12-19 02:44:06 -0800</delta_ts>
            <desc>Removes changes under QVariantMap hint; redirect to Qt bool and double hint respectively in the autoswitch; remove object from visited array before recursive call</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>5867</size>
            <attacher name="jade han">jade.han</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTMzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMDgtMTItMTYgIEphZGUgSGFuICA8amFkZS5oYW5Abm9raWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByb3Zp
ZCBwcm9wZXIgaGFuZGxpbmcgd2hlbiBjb252ZXJ0aW5nIGZyb20gamF2YXNjcmlwdCBOdW1iZXIg
T2JqZWN0IG9yIEJvb2xlYW4gT2JqZWN0IHRvIFF0IHR5cGVzIGluIFF0V2ViS2l0LgorCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg4MAorCisgICAg
ICAgICogYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6
Y29udmVydFZhbHVlVG9RVmFyaWFudCk6CisKIDIwMDgtMTItMTYgWWFlbCBBaGFyb24gPHlhZWwu
YWhhcm9uQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0YsO4
LgpJbmRleDogV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAJKHJldmlzaW9uIDM5MzM1KQorKysgV2Vi
Q29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2
LDcgQEAKICNpbmNsdWRlIDxydW50aW1lLmg+CiAjaW5jbHVkZSA8cnVudGltZV9hcnJheS5oPgog
I2luY2x1ZGUgPHJ1bnRpbWVfb2JqZWN0Lmg+CisjaW5jbHVkZSAiQm9vbGVhbk9iamVjdC5oIgog
CiAvLyBRdFNjcmlwdCBoYXMgdGhlc2UKIFFfREVDTEFSRV9NRVRBVFlQRShRT2JqZWN0TGlzdCk7
CkBAIC0xNzksNyArMTgwLDEyIEBAIFFWYXJpYW50IGNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQoRXhl
Y1N0YXQKICAgICAgICAgICAgICAgICBoaW50ID0gUU1ldGFUeXBlOjpRUmVnRXhwOwogICAgICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSBPYmplY3Q6Ci0gICAgICAgICAgICAg
ICAgaGludCA9IFFNZXRhVHlwZTo6UVZhcmlhbnRNYXA7CisgICAgICAgICAgICAgICAgaWYgKG9i
amVjdC0+aW5oZXJpdHMoJk51bWJlck9iamVjdDo6aW5mbykpCisgICAgICAgICAgICAgICAgICAg
IGhpbnQgPSBRTWV0YVR5cGU6OkRvdWJsZTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChvYmpl
Y3QtPmluaGVyaXRzKCZCb29sZWFuT2JqZWN0OjppbmZvKSkKKyAgICAgICAgICAgICAgICAgICAg
aGludCA9IFFNZXRhVHlwZTo6Qm9vbDsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgIGhpbnQgPSBRTWV0YVR5cGU6OlFWYXJpYW50TWFwOwogICAgICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICAgICAgY2FzZSBRT2JqOgogICAgICAgICAgICAgICAgIGhpbnQgPSBR
TWV0YVR5cGU6OlFPYmplY3RTdGFyOwpAQCAtMjA3LDcgKzIxMywxMCBAQCBRVmFyaWFudCBjb252
ZXJ0VmFsdWVUb1FWYXJpYW50KEV4ZWNTdGF0CiAgICAgaW50IGRpc3QgPSAtMTsKICAgICBzd2l0
Y2ggKGhpbnQpIHsKICAgICAgICAgY2FzZSBRTWV0YVR5cGU6OkJvb2w6Ci0gICAgICAgICAgICBy
ZXQgPSBRVmFyaWFudCh2YWx1ZS0+dG9Cb29sZWFuKGV4ZWMpKTsKKyAgICAgICAgICAgIGlmICh0
eXBlID09IE9iamVjdCAmJiBvYmplY3QtPmluaGVyaXRzKCZCb29sZWFuT2JqZWN0OjppbmZvKSkK
KyAgICAgICAgICAgICAgICByZXQgPSBRVmFyaWFudChhc0Jvb2xlYW5PYmplY3QodmFsdWUpLT5p
bnRlcm5hbFZhbHVlKCktPnRvQm9vbGVhbihleGVjKSk7CisgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgcmV0ID0gUVZhcmlhbnQodmFsdWUtPnRvQm9vbGVhbihleGVjKSk7CiAgICAg
ICAgICAgICBpZiAodHlwZSA9PSBCb29sZWFuKQogICAgICAgICAgICAgICAgIGRpc3QgPSAwOwog
ICAgICAgICAgICAgZWxzZQpAQCAtNjk5LDYgKzcwOCwxMSBAQCBRVmFyaWFudCBjb252ZXJ0VmFs
dWVUb1FWYXJpYW50KEV4ZWNTdGF0CiAgICAgICAgICAgICAgICAgICAgICAgICAqZGlzdGFuY2Ug
PSAxOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKICAgICAgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAvLyBiZWNhdXNlIG9mIHRoZSB2aXNp
dGVkT2JqZWN0cyBjaGVjayBhdCB0aGUgYmVnaW5naW5nIG9mIHRoaXMgZnVuY3Rpb24sCisgICAg
ICAgICAgICAgICAgICAgIC8vIHJlbW92ZSB0aGUgb2JqZWN0IGZyb20gdGhlIHZpc2l0ZWRPYmpl
Y3RzIGJmIHJlY3Vyc2luZyB0byB0aGUgZnVuY3Rpb24gYWdhaW4KKyAgICAgICAgICAgICAgICAg
ICAgaWYgKHR5cGUgPT0gT2JqZWN0ICYmIHZpc2l0ZWRPYmplY3RzLT5jb250YWlucyhvYmplY3Qp
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2l0ZWRPYmplY3RzLT5yZW1vdmUob2Jq
ZWN0KTsKKwogICAgICAgICAgICAgICAgICAgICAvLyBXZWxsLi4gd2UgY2FuIGRvIGFueXRoaW5n
Li4uIGp1c3QgcmVjdXJzZSB3aXRoIHRoZSBhdXRvZGV0ZWN0IGZsYWcKICAgICAgICAgICAgICAg
ICAgICAgcmV0ID0gY29udmVydFZhbHVlVG9RVmFyaWFudChleGVjLCB2YWx1ZSwgUU1ldGFUeXBl
OjpWb2lkLCBkaXN0YW5jZSwgdmlzaXRlZE9iamVjdHMpOwogICAgICAgICAgICAgICAgICAgICBk
aXN0ID0gMTA7CkluZGV4OiBXZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dC9xdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDM5MzM1KQorKysgV2ViS2l0L3F0L0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDA4LTEyLTE2ICBKYWRlIEhhbiAgPGph
ZGUuaGFuQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBQcm92aWQgcHJvcGVyIGhhbmRsaW5nIHdoZW4gY29udmVydGluZyBmcm9tIGph
dmFzY3JpcHQgTnVtYmVyIE9iamVjdCBvciBCb29sZWFuIE9iamVjdCB0byBRdCB0eXBlcyBpbiBR
dFdlYktpdC4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI4ODAKKworICAgICAgICAqIHRlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcDoK
KyAgICAgICAgKE15UU9iamVjdDo6bXlJbnZva2FibGVXaXRoQm9vbEFyZyk6CisKIDIwMDgtMTIt
MTUgIEhvbGdlciBIYW5zIFBldGVyIEZyZXl0aGVyICA8emVja2VAc2VsZmlzaC5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCkluZGV4OiBXZWJLaXQvcXQvdGVzdHMv
cXdlYmZyYW1lL3RzdF9xd2ViZnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC90ZXN0
cy9xd2ViZnJhbWUvdHN0X3F3ZWJmcmFtZS5jcHAJKHJldmlzaW9uIDM5MzM1KQorKysgV2ViS2l0
L3F0L3Rlc3RzL3F3ZWJmcmFtZS90c3RfcXdlYmZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzU5LDYgKzM1OSwxMCBAQCBwdWJsaWM6CiAgICAgICAgIGNvbnN0X2Nhc3Q8TXlRT2JqZWN0Kj4o
dGhpcyktPm1fcXRGdW5jdGlvbkludm9rZWQgPSA1MTsKICAgICAgICAgbV9hY3R1YWxzIDw8IHFW
YXJpYW50RnJvbVZhbHVlKGFyZyk7CiAgICAgfQorICAgIFFfSU5WT0tBQkxFIHZvaWQgbXlJbnZv
a2FibGVXaXRoQm9vbEFyZyhib29sIGFyZykgeworICAgICAgICBtX3F0RnVuY3Rpb25JbnZva2Vk
ID0gNTI7CisgICAgICAgIG1fYWN0dWFscyA8PCBhcmc7CisgICAgfQogCiAgICAgdm9pZCBlbWl0
TXlTaWduYWwoKSB7CiAgICAgICAgIGVtaXQgbXlTaWduYWwoKTsKQEAgLTc4NCw2ICs3ODgsMTQg
QEAgdm9pZCB0c3RfUVdlYkZyYW1lOjpnZXRTZXRTdGF0aWNQcm9wZXJ0eQogICAgIFFDT01QQVJF
KGV2YWxKUygibXlPYmplY3Quc3RyaW5nUHJvcGVydHkiKSwgUVN0cmluZygpKTsKICAgICBRQ09N
UEFSRShtX215T2JqZWN0LT5zdHJpbmdQcm9wZXJ0eSgpLCBRU3RyaW5nKCkpOwogCisgICAgUUNP
TVBBUkUoZXZhbEpTKCJteU9iamVjdC52YXJpYW50UHJvcGVydHkgPSBuZXcgTnVtYmVyKDEyMzQp
OyIKKyAgICAgICAgICAgICAgICAgICAgIm15T2JqZWN0LnZhcmlhbnRQcm9wZXJ0eSIpLnRvRG91
YmxlKCksIDEyMzQuMCk7CisgICAgUUNPTVBBUkUobV9teU9iamVjdC0+dmFyaWFudFByb3BlcnR5
KCkudG9Eb3VibGUoKSwgMTIzNC4wKTsKKworICAgIFFDT01QQVJFKGV2YWxKUygibXlPYmplY3Qu
dmFyaWFudFByb3BlcnR5ID0gbmV3IEJvb2xlYW4oMTIzNCk7IgorICAgICAgICAgICAgICAgICAg
ICAibXlPYmplY3QudmFyaWFudFByb3BlcnR5IiksIHNUcnVlKTsKKyAgICBRQ09NUEFSRShtX215
T2JqZWN0LT52YXJpYW50UHJvcGVydHkoKS50b0Jvb2woKSwgdHJ1ZSk7CisKICAgICBRQ09NUEFS
RShldmFsSlMoIm15T2JqZWN0LnZhcmlhbnRQcm9wZXJ0eSA9IG51bGw7IgogICAgICAgICAgICAg
ICAgICAgICAibXlPYmplY3QudmFyaWFudFByb3BlcnR5LnZhbHVlT2YoKSIpLCBzVW5kZWZpbmVk
KTsKICAgICBRQ09NUEFSRShtX215T2JqZWN0LT52YXJpYW50UHJvcGVydHkoKSwgUVZhcmlhbnQo
KSk7CkBAIC05NjEsNiArOTczLDE4IEBAIHZvaWQgdHN0X1FXZWJGcmFtZTo6Y2FsbFF0SW52b2th
YmxlKCkKICAgICBRQ09NUEFSRShtX215T2JqZWN0LT5xdEZ1bmN0aW9uQWN0dWFscygpLmF0KDAp
LnRvRG91YmxlKCksIDEyMy41KTsKIAogICAgIG1fbXlPYmplY3QtPnJlc2V0UXRGdW5jdGlvbklu
dm9rZWQoKTsKKyAgICBRQ09NUEFSRShldmFsSlMoInR5cGVvZiBteU9iamVjdC5teUludm9rYWJs
ZVdpdGhEb3VibGVBcmcobmV3IE51bWJlcigxMjM0LjUpKSIpLCBzVW5kZWZpbmVkKTsKKyAgICBR
Q09NUEFSRShtX215T2JqZWN0LT5xdEZ1bmN0aW9uSW52b2tlZCgpLCA0KTsKKyAgICBRQ09NUEFS
RShtX215T2JqZWN0LT5xdEZ1bmN0aW9uQWN0dWFscygpLnNpemUoKSwgMSk7CisgICAgUUNPTVBB
UkUobV9teU9iamVjdC0+cXRGdW5jdGlvbkFjdHVhbHMoKS5hdCgwKS50b0RvdWJsZSgpLCAxMjM0
LjUpOworCisgICAgbV9teU9iamVjdC0+cmVzZXRRdEZ1bmN0aW9uSW52b2tlZCgpOworICAgIFFD
T01QQVJFKGV2YWxKUygidHlwZW9mIG15T2JqZWN0Lm15SW52b2thYmxlV2l0aEJvb2xBcmcobmV3
IEJvb2xlYW4odHJ1ZSkpIiksIHNVbmRlZmluZWQpOworICAgIFFDT01QQVJFKG1fbXlPYmplY3Qt
PnF0RnVuY3Rpb25JbnZva2VkKCksIDUyKTsKKyAgICBRQ09NUEFSRShtX215T2JqZWN0LT5xdEZ1
bmN0aW9uQWN0dWFscygpLnNpemUoKSwgMSk7CisgICAgUUNPTVBBUkUobV9teU9iamVjdC0+cXRG
dW5jdGlvbkFjdHVhbHMoKS5hdCgwKS50b0Jvb2woKSwgdHJ1ZSk7CisKKyAgICBtX215T2JqZWN0
LT5yZXNldFF0RnVuY3Rpb25JbnZva2VkKCk7CiAgICAgUUNPTVBBUkUoZXZhbEpTKCJ0eXBlb2Yg
bXlPYmplY3QubXlJbnZva2FibGVXaXRoU3RyaW5nQXJnKCdjaWFvJykiKSwgc1VuZGVmaW5lZCk7
CiAgICAgUUNPTVBBUkUobV9teU9iamVjdC0+cXRGdW5jdGlvbkludm9rZWQoKSwgNSk7CiAgICAg
UUNPTVBBUkUobV9teU9iamVjdC0+cXRGdW5jdGlvbkFjdHVhbHMoKS5zaXplKCksIDEpOwo=
</data>
<flag name="review"
          id="12326"
          type_id="1"
          status="+"
          setter="vestbo"
    />
          </attachment>
      

    </bug>

</bugzilla>