<?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>87963</bug_id>
          
          <creation_ts>2012-05-31 05:40:24 -0700</creation_ts>
          <short_desc>Need special-case toJS(IDBAny) for IDBCursorWithValue</short_desc>
          <delta_ts>2014-04-24 16:45:33 -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>
          
          <blocked>45110</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Charles Wei">charles.wei</reporter>
          <assigned_to name="Charles Wei">charles.wei</assigned_to>
          <cc>ggaren</cc>
    
    <cc>jorlow</cc>
    
    <cc>jrogers</cc>
    
    <cc>jsbell</cc>
    
    <cc>oliver</cc>
    
    <cc>PeterHWang</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>sam</cc>
    
    <cc>staikos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>638283</commentid>
    <comment_count>0</comment_count>
    <who name="Charles Wei">charles.wei</who>
    <bug_when>2012-05-31 05:40:24 -0700</bug_when>
    <thetext>For JSC binding for JavaScript IDL files,   say, Base and Derived where Derived derives from Base,  the JSC binding generator generates native to JS binding toJS(native object) for the base interface but not the derived interface.   So &quot;JSValue toJS(A*)&quot; will be generated but not&quot; JSValue toJS(B*)&quot;.

with IndexedDB support, IDBAny is the wildcard interface that can be many things, like IDBRequest, IDBIndex, IDBCursor, IDBCursorWithValue.    toJS(IDBAny*) generates corresponding JSValue according to the real data it holds.

    case IDBAny::IDBCursorType:
        return toJS(exec, globalObject, idbAny-&gt;idbCursor());
    case IDBAny::IDBCursorWithValueType:
        return toJS(exec, globalObject, idbAny-&gt;idbCursorWithValue());

Actually generates both to IDBCursor objects,  because there&apos;s no toJS(exec, globalObject, IDBCursorWithValue*) generated by the code generator because IDBCursorWithValue interface is derived from IDBCursor interface.

So when the IDBCursor  JSObject is generated for IDBCursorWithValue,   it can&apos;t access the attributes (the value) hold by the actual IDBCursorWithValue object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638857</commentid>
    <comment_count>1</comment_count>
      <attachid>145183</attachid>
    <who name="Charles Wei">charles.wei</who>
    <bug_when>2012-05-31 17:59:22 -0700</bug_when>
    <thetext>Created attachment 145183
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642186</commentid>
    <comment_count>2</comment_count>
      <attachid>145183</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-05 22:37:44 -0700</bug_when>
    <thetext>Comment on attachment 145183
Patch

Clearing flags on attachment: 145183

Committed r119561: &lt;http://trac.webkit.org/changeset/119561&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642187</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-05 22:37:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1003865</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-24 16:45:33 -0700</bug_when>
    <thetext>Moving all JavaScriptGlue bugs to JavaScriptCore. The JavaScriptGlue framework itself is long gone. And most of the more recent bugs put in this component were put there by people who thought this was for some other aspect of “JavaScript glue” and have nothing to do with the actual original reason for the existence of this component, which was an OS-X-only framework named JavaScriptGlue.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145183</attachid>
            <date>2012-05-31 17:59:22 -0700</date>
            <delta_ts>2012-06-05 22:37:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87963-20120601090829.patch</filename>
            <type>text/plain</type>
            <size>1902</size>
            <attacher name="Charles Wei">charles.wei</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5MTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTVkZjdhMzczOTEyYWY5
YmEwZjk5ZTRiNmEzNjFmMWRjMzUxODMyNy4uYjNhOGQ2YzYzMzQ1OWI2OTAzOWE0NDQ0ODE4MDAy
NDVjNWVmOTJlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTA1LTMxICBDaGFy
bGVzIFdlaSAgPGNoYXJsZXMud2VpQHRvcmNobW9iaWxlLmNvbS5jbj4KKworICAgICAgICBOZWVk
IHNwZWNpYWwtY2FzZSB0b0pTKElEQkFueSkgZm9yIElEQkN1cnNvcldpdGhWYWx1ZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc5NjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHRo
aXMgaXMgZm9yIGluZGV4ZWREQiwgd2hpY2ggaXMgbm90IHdvcmtpbmcgZm9yIEpTQyBiaW5kaW5n
LgorICAgICAgICBXaGVuIGluZGV4ZWREQiB3b3JraW5nIGZvciBKU0MsIGFsbCB0aGUgaW5kZXhk
YiB0ZXN0IGNhc2VzIHNob3VsZCBhcHBseS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURC
QW55Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorCiAyMDEyLTA1LTMxICBT
aGF3biBTaW5naCAgPHNoYXduc2luZ2hAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1
bV0gTWlncmF0ZSB0byBXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJBbnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJREJBbnlDdXN0b20uY3BwCmluZGV4IGRlZmE2NTZlN2UyYjlmMzQ0ODI1
YmYwMzFjMmI4OTEzMzgzODdiMjYuLmNmNTQ1ZDMwMDlhYTk0YmI5ODg4ODYyMTA5MGVlZTY4NDJm
YjQyYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCQW55Q3Vz
dG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQkFueUN1c3RvbS5j
cHAKQEAgLTQxLDYgKzQxLDcgQEAKICNpbmNsdWRlICJJREJPYmplY3RTdG9yZS5oIgogI2luY2x1
ZGUgIkpTRE9NU3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkpTSURCQ3Vyc29yLmgiCisjaW5jbHVk
ZSAiSlNJREJDdXJzb3JXaXRoVmFsdWUuaCIKICNpbmNsdWRlICJKU0lEQkRhdGFiYXNlLmgiCiAj
aW5jbHVkZSAiSlNJREJGYWN0b3J5LmgiCiAjaW5jbHVkZSAiSlNJREJJbmRleC5oIgpAQCAtNjgs
NyArNjksNyBAQCBKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBKU0RPTUdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBJREJBbnkqIGlkYkFueSkKICAgICBjYXNlIElEQkFueTo6SURCQ3Vy
c29yVHlwZToKICAgICAgICAgcmV0dXJuIHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCBpZGJBbnkt
PmlkYkN1cnNvcigpKTsKICAgICBjYXNlIElEQkFueTo6SURCQ3Vyc29yV2l0aFZhbHVlVHlwZToK
LSAgICAgICAgcmV0dXJuIHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCBpZGJBbnktPmlkYkN1cnNv
cldpdGhWYWx1ZSgpKTsKKyAgICAgICAgcmV0dXJuIHdyYXA8SlNJREJDdXJzb3JXaXRoVmFsdWU+
KGV4ZWMsIGdsb2JhbE9iamVjdCwgaWRiQW55LT5pZGJDdXJzb3JXaXRoVmFsdWUoKS5nZXQoKSk7
CiAgICAgY2FzZSBJREJBbnk6OklEQkRhdGFiYXNlVHlwZToKICAgICAgICAgcmV0dXJuIHRvSlMo
ZXhlYywgZ2xvYmFsT2JqZWN0LCBpZGJBbnktPmlkYkRhdGFiYXNlKCkpOwogICAgIGNhc2UgSURC
QW55OjpJREJGYWN0b3J5VHlwZToK
</data>

          </attachment>
      

    </bug>

</bugzilla>