<?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>96821</bug_id>
          
          <creation_ts>2012-09-14 13:07:08 -0700</creation_ts>
          <short_desc>Support constructor-type attribute in idls other than DOMWindow.</short_desc>
          <delta_ts>2012-09-14 14:43:21 -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>WebCore JavaScript</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>92413</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>abarth</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>721068</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2012-09-14 13:07:08 -0700</bug_when>
    <thetext>Currently, it is assumed that Constructor attribute is used only in DOMWindow.idl. We should release this condition.
Bug 92413 is supposed to depend on this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721076</commentid>
    <comment_count>1</comment_count>
      <attachid>164213</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2012-09-14 13:16:46 -0700</bug_when>
    <thetext>Created attachment 164213
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721086</commentid>
    <comment_count>2</comment_count>
      <attachid>164213</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-09-14 13:30:33 -0700</bug_when>
    <thetext>Comment on attachment 164213
fix patch

View in context: https://bugs.webkit.org/attachment.cgi?id=164213&amp;action=review

&gt; Source/WebCore/ChangeLog:8
&gt; +        In CodeGeneratorJS.pm, we should not assume only DOMWindow uses Constructor

What about CodeGeneratorV8.pm?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721093</commentid>
    <comment_count>3</comment_count>
      <attachid>164213</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-09-14 13:39:33 -0700</bug_when>
    <thetext>Comment on attachment 164213
fix patch

View in context: https://bugs.webkit.org/attachment.cgi?id=164213&amp;action=review

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        In CodeGeneratorJS.pm, we should not assume only DOMWindow uses Constructor
&gt; 
&gt; What about CodeGeneratorV8.pm?

In V8, we use info.Holder(), which probably works in either case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721098</commentid>
    <comment_count>4</comment_count>
      <attachid>164213</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-09-14 13:45:50 -0700</bug_when>
    <thetext>Comment on attachment 164213
fix patch

View in context: https://bugs.webkit.org/attachment.cgi?id=164213&amp;action=review

&gt;&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt;&gt; +        In CodeGeneratorJS.pm, we should not assume only DOMWindow uses Constructor
&gt;&gt; 
&gt;&gt; What about CodeGeneratorV8.pm?
&gt; 
&gt; In V8, we use info.Holder(), which probably works in either case.

CodeGeneratorV8.pm uses info.Holder(), which is fine, but it looks like that CodeGeneratorV8.pm returns v8Undefined() for non-DOMWindow cases. We might want to fix the code:

http://code.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm&amp;exact_package=chromium&amp;q=codegeneratorv8.pm&amp;type=cs&amp;l=822</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721112</commentid>
    <comment_count>5</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2012-09-14 14:05:10 -0700</bug_when>
    <thetext>&gt; &gt; In V8, we use info.Holder(), which probably works in either case.
&gt; 
&gt; CodeGeneratorV8.pm uses info.Holder(), which is fine, but it looks like that CodeGeneratorV8.pm returns v8Undefined() for non-DOMWindow cases. We might want to fix the code:
&gt; 
&gt; http://code.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm&amp;exact_package=chromium&amp;q=codegeneratorv8.pm&amp;type=cs&amp;l=822

The latest trunk looks like this:
http://trac.webkit.org/browser/trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm#L810

It&apos;s quite different from your link.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721125</commentid>
    <comment_count>6</comment_count>
      <attachid>164213</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-09-14 14:16:02 -0700</bug_when>
    <thetext>Comment on attachment 164213
fix patch

&gt; The latest trunk looks like this:
&gt; http://trac.webkit.org/browser/trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm#L810

Ah, the latest trunk looks good. Sorry for the noise!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721147</commentid>
    <comment_count>7</comment_count>
      <attachid>164213</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-14 14:43:17 -0700</bug_when>
    <thetext>Comment on attachment 164213
fix patch

Clearing flags on attachment: 164213

Committed r128655: &lt;http://trac.webkit.org/changeset/128655&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721148</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-14 14:43:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164213</attachid>
            <date>2012-09-14 13:16:46 -0700</date>
            <delta_ts>2012-09-14 14:43:17 -0700</delta_ts>
            <desc>fix patch</desc>
            <filename>96821_1.patch</filename>
            <type>text/plain</type>
            <size>5148</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhYjIzOGRlLi43OGI1ZWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTItMDktMTQgIENoYW5nIFNodSAgPGNzaHVAd2Via2l0Lm9yZz4KKworICAgICAgICBT
dXBwb3J0IGNvbnN0cnVjdG9yLXR5cGUgYXR0cmlidXRlIGluIGlkbHMgb3RoZXIgdGhhbiBET01X
aW5kb3cuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
NjgyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElu
IENvZGVHZW5lcmF0b3JKUy5wbSwgd2Ugc2hvdWxkIG5vdCBhc3N1bWUgb25seSBET01XaW5kb3cg
dXNlcyBDb25zdHJ1Y3RvcgorICAgICAgICBhdHRyaWJ1dGUuIFNvIGZvciBvdGhlciBpbnRlcmZh
Y2VzLCB3ZSBzaG91bGQgcGFzcyBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKQorICAgICAgICBp
bnN0ZWFkIG9mIGNhc3RlZFRoaXMuCisKKyAgICAgICAgVGVzdDogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE9iai5pZGwKKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpqc1Rlc3RPYmpDb25zdHJ1Y3RvclRlc3RTdWJPYmopOgorICAgICAgICAoV2ViQ29yZTo6
anNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNENvbnN0cnVjdG9yKToKKyAgICAgICAgKFdlYkNvcmU6
OmpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjVDb25zdHJ1Y3Rvcik6CisgICAgICAgIChXZWJDb3Jl
Ojpqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHI2Q29uc3RydWN0b3IpOgorCiAyMDEyLTA5LTE0ICBN
aWtoYWlsIFBvemRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgogCiAgICAg
ICAgIFtFRkxdIEF0dGVtcHQgdG8gY3JlYXRlIGEgdGhlbWUgZm9yIDAgc2l6ZWQgZWxlbWVudCBs
ZWFkcyB0byBhc3NlcnRpb24gaGl0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDQ4Y2Q1NGQuLmUzNzY2ZDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBA
IC0xODc4LDkgKzE4NzgsMTQgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAg
ICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVj
dG9yJC8pIHsKICAgICAgICAgICAgICAgICAgICAgbXkgJGNvbnN0cnVjdG9yVHlwZSA9ICRjb2Rl
R2VuZXJhdG9yLT5TdHJpcE1vZHVsZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpOwogICAg
ICAgICAgICAgICAgICAgICAkY29uc3RydWN0b3JUeXBlID1+IHMvQ29uc3RydWN0b3IkLy87Ci0g
ICAgICAgICAgICAgICAgICAgICMgQ29uc3RydWN0b3IgYXR0cmlidXRlIGlzIG9ubHkgdXNlZCBi
eSBET01XaW5kb3cuaWRsLCBzbyBpdCdzIGNvcnJlY3QgdG8gcGFzcyBjYXN0ZWRUaGlzIGFzIHRo
ZSBnbG9iYWwgb2JqZWN0Ci0gICAgICAgICAgICAgICAgICAgICMgT25jZSBKU0RPTVdyYXBwZXJz
IGhhdmUgYSBiYWNrLXBvaW50ZXIgdG8gdGhlIGdsb2JhbE9iamVjdCB3ZSBjYW4gcGFzcyBjYXN0
ZWRUaGlzLT5nbG9iYWxPYmplY3QoKQotICAgICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICByZXR1cm4gSlMiIC4gJGNvbnN0cnVjdG9yVHlwZSAuICI6OmdldENvbnN0cnVj
dG9yKGV4ZWMsIGNhc3RlZFRoaXMpO1xuIik7CisgICAgICAgICAgICAgICAgICAgICMgV2hlbiBD
b25zdHJ1Y3RvciBhdHRyaWJ1dGUgaXMgdXNlZCBieSBET01XaW5kb3cuaWRsLCBpdCdzIGNvcnJl
Y3QgdG8gcGFzcyBjYXN0ZWRUaGlzIGFzIHRoZSBnbG9iYWwgb2JqZWN0CisgICAgICAgICAgICAg
ICAgICAgICMgV2hlbiBKU0RPTVdyYXBwZXJzIGhhdmUgYSBiYWNrLXBvaW50ZXIgdG8gdGhlIGds
b2JhbE9iamVjdCB3ZSBjYW4gcGFzcyBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKQorICAgICAg
ICAgICAgICAgICAgICBpZiAoJGludGVyZmFjZU5hbWUgZXEgIkRPTVdpbmRvdyIpIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBKUyIgLiAk
Y29uc3RydWN0b3JUeXBlIC4gIjo6Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhpcyk7XG4i
KTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
QWRkVG9JbXBsSW5jbHVkZXMoIkpTIiAuICRjb25zdHJ1Y3RvclR5cGUgLiAiLmgiLCAkYXR0cmli
dXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb25kaXRpb25hbCJ9KTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEpTIiAu
ICRjb25zdHJ1Y3RvclR5cGUgLiAiOjpnZXRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzLT5n
bG9iYWxPYmplY3QoKSk7XG4iKTsKKyAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgIH0gZWxzaWYgKCFAeyRhdHRyaWJ1dGUtPmdldHRlckV4Y2VwdGlvbnN9KSB7CiAgICAgICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIFVOVVNFRF9QQVJBTShleGVjKTtc
biIpIGlmICEkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDYWxs
V2l0aCJ9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IDFjYWUyYzguLmY0OGE5YzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiSlNTY3JpcHRQcm9maWxlLmgiCiAjaW5jbHVkZSAi
SlNUZXN0Q2FsbGJhY2suaCIKICNpbmNsdWRlICJKU1Rlc3RPYmouaCIKKyNpbmNsdWRlICJKU1Rl
c3RTdWJPYmouaCIKICNpbmNsdWRlICJKU2EuaCIKICNpbmNsdWRlICJKU2IuaCIKICNpbmNsdWRl
ICJKU2Jvb2wuaCIKQEAgLTQzOCw3ICs0MzksNyBAQCBKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVj
dG9yU3RhdGljU3RyaW5nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsCiBK
U1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yVGVzdFN1Yk9iaihFeGVjU3RhdGUqIGV4ZWMsIEpT
VmFsdWUgc2xvdEJhc2UsIFByb3BlcnR5TmFtZSkKIHsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRo
aXMgPSBqc0Nhc3Q8SlNUZXN0T2JqKj4oYXNPYmplY3Qoc2xvdEJhc2UpKTsKLSAgICByZXR1cm4g
SlNUZXN0U3ViT2JqOjpnZXRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzKTsKKyAgICByZXR1
cm4gSlNUZXN0U3ViT2JqOjpnZXRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzLT5nbG9iYWxP
YmplY3QoKSk7CiB9CiAKIApAQCAtODE1LDcgKzgxNiw3IEBAIEpTVmFsdWUganNUZXN0T2JqQ29u
ZGl0aW9uYWxBdHRyMyhFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsIFByb3BlcnR5
TmFtCiBKU1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjRDb25zdHJ1Y3RvcihFeGVjU3Rh
dGUqIGV4ZWMsIEpTVmFsdWUgc2xvdEJhc2UsIFByb3BlcnR5TmFtZSkKIHsKICAgICBKU1Rlc3RP
YmoqIGNhc3RlZFRoaXMgPSBqc0Nhc3Q8SlNUZXN0T2JqKj4oYXNPYmplY3Qoc2xvdEJhc2UpKTsK
LSAgICByZXR1cm4gSlNUZXN0T2JqZWN0QTo6Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhp
cyk7CisgICAgcmV0dXJuIEpTVGVzdE9iamVjdEE6OmdldENvbnN0cnVjdG9yKGV4ZWMsIGNhc3Rl
ZFRoaXMtPmdsb2JhbE9iamVjdCgpKTsKIH0KIAogI2VuZGlmCkBAIC04MjQsNyArODI1LDcgQEAg
SlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHI0Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBl
eGVjLCBKU1ZhbHVlIHNsb3RCYXNlLAogSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHI1
Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHNsb3RCYXNlLCBQcm9wZXJ0eU5h
bWUpCiB7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNDYXN0PEpTVGVzdE9iaio+KGFz
T2JqZWN0KHNsb3RCYXNlKSk7Ci0gICAgcmV0dXJuIEpTVGVzdE9iamVjdEI6OmdldENvbnN0cnVj
dG9yKGV4ZWMsIGNhc3RlZFRoaXMpOworICAgIHJldHVybiBKU1Rlc3RPYmplY3RCOjpnZXRDb25z
dHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSk7CiB9CiAKICNlbmRpZgpA
QCAtODMzLDcgKzgzNCw3IEBAIEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNUNvbnN0
cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwKIEpTVmFsdWUganNUZXN0
T2JqQ29uZGl0aW9uYWxBdHRyNkNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBz
bG90QmFzZSwgUHJvcGVydHlOYW1lKQogewogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpz
Q2FzdDxKU1Rlc3RPYmoqPihhc09iamVjdChzbG90QmFzZSkpOwotICAgIHJldHVybiBKU1Rlc3RP
YmplY3RDOjpnZXRDb25zdHJ1Y3RvcihleGVjLCBjYXN0ZWRUaGlzKTsKKyAgICByZXR1cm4gSlNU
ZXN0T2JqZWN0Qzo6Z2V0Q29uc3RydWN0b3IoZXhlYywgY2FzdGVkVGhpcy0+Z2xvYmFsT2JqZWN0
KCkpOwogfQogCiAjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>