<?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>120398</bug_id>
          
          <creation_ts>2013-08-28 02:59:52 -0700</creation_ts>
          <short_desc>REGRESSION(r154708): It broke all plugin tests on GTK and Qt WK1</short_desc>
          <delta_ts>2013-08-28 07:02:36 -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>Tools / Tests</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>79666</blocked>
    
    <blocked>120376</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zoltan Arvai">zarvai</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>abrhm</cc>
    
    <cc>allan.jensen</cc>
    
    <cc>andersca</cc>
    
    <cc>kadam</cc>
    
    <cc>kling</cc>
    
    <cc>ossy</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>921903</commentid>
    <comment_count>0</comment_count>
    <who name="Zoltan Arvai">zarvai</who>
    <bug_when>2013-08-28 02:59:52 -0700</bug_when>
    <thetext>Various undefined type errors occurred with plugin tests after the patch, eg:

FAIL document.getElementById(&apos;plugin&apos;).hasStream should be true (of type boolean). Was undefined (of type undefined).
FAIL: typeof embed.testCallback should be function but instead is undefined.
CONSOLE MESSAGE: line 19: TypeError: undefined is not a function (evaluating &apos;testPlugin.getURLNotify(&quot;javascript:12345&quot;, null, &quot;callback&quot;)&apos;)
CONSOLE MESSAGE: line 20: TypeError: undefined is not a function (evaluating &apos;plugin.testPassTestObject(&quot;npapiCallback&quot;, testObject)&apos;)
CONSOLE MESSAGE: line 19: TypeError: undefined is not a function (evaluating &apos;embed.remember(obj)&apos;)
CONSOLE MESSAGE: line 14: TypeError: undefined is not a function (evaluating &apos;plugin.testEnumerate(testObject, outArray)&apos;)
FAIL plugin.testEvaluate(&apos;1&apos;) should be 1. Threw exception TypeError: undefined is not a function (evaluating &apos;plugin.testEvaluate(&apos;1&apos;)&apos;)
....

- http://build.webkit.org/builders/Qt%20Linux%20Release/builds/62478
- http://build.webkit.org/builders/GTK%20Linux%2064-bit%20Debug%20WK1/builds/3852</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921906</commentid>
    <comment_count>1</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-08-28 03:05:50 -0700</bug_when>
    <thetext>Looking at the offending patch:

Index: /trunk/Source/WebCore/bridge/c/c_class.cpp
===================================================================
--- /trunk/Source/WebCore/bridge/c/c_class.cpp	(revision 154707)
+++ /trunk/Source/WebCore/bridge/c/c_class.cpp	(revision 154708)
...
@@ -94,16 +91,16 @@
     String name(propertyName.publicName());
     
-    Field* aField = _fields.get(name.impl());
-    if (aField)
-        return aField;
-    
+    if (Field* field = m_fields.get(name.impl()))
+        return field;
+
     NPIdentifier ident = _NPN_GetStringIdentifier(name.ascii().data());
     const CInstance* inst = static_cast&lt;const CInstance*&gt;(instance);
     NPObject* obj = inst-&gt;getObject();
-    if (_isa-&gt;hasProperty &amp;&amp; _isa-&gt;hasProperty(obj, ident)){
-        aField = new CField(ident); // deleted in the CClass destructor
-        _fields.set(name.impl(), aField);
+    if (m_isa-&gt;hasProperty &amp;&amp; m_isa-&gt;hasProperty(obj, ident)) {
+        OwnPtr&lt;Field&gt; field = adoptPtr(new CField(ident));
+        m_fields.set(name.impl(), field.release());
     }
-    return aField;
+
+    return 0;
 }
 

The last return seems to break the previous behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921950</commentid>
    <comment_count>2</comment_count>
    <who name="Zoltan Arvai">zarvai</who>
    <bug_when>2013-08-28 05:45:48 -0700</bug_when>
    <thetext>There were a similar changes in c_class.cpp 11 months ago:
http://trac.webkit.org/changeset/129969

Probably Qt needs some similar changes this time, too.
WebCore/bridge/qt/qt_class.cpp
WebCore/bridge/qt/qt_class.h
WebCore/bridge/qt/qt_instance.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921960</commentid>
    <comment_count>3</comment_count>
      <attachid>209871</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-08-28 06:15:09 -0700</bug_when>
    <thetext>Created attachment 209871
Provisional patch

These changes fix the failures on the GTK port. Can somebody try them on Qt?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921965</commentid>
    <comment_count>4</comment_count>
    <who name="Zoltan Arvai">zarvai</who>
    <bug_when>2013-08-28 06:21:36 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Created an attachment (id=209871) [details]
&gt; Provisional patch
&gt; 
&gt; These changes fix the failures on the GTK port. Can somebody try them on Qt?

Yes, I&apos;m on it. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921970</commentid>
    <comment_count>5</comment_count>
      <attachid>209874</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-08-28 06:37:54 -0700</bug_when>
    <thetext>Created attachment 209874
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921980</commentid>
    <comment_count>6</comment_count>
      <attachid>209874</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-08-28 07:02:29 -0700</bug_when>
    <thetext>Comment on attachment 209874
Patch

Clearing flags on attachment: 209874

Committed r154741: &lt;http://trac.webkit.org/changeset/154741&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921981</commentid>
    <comment_count>7</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-08-28 07:02:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209871</attachid>
            <date>2013-08-28 06:15:09 -0700</date>
            <delta_ts>2013-08-28 06:37:45 -0700</delta_ts>
            <desc>Provisional patch</desc>
            <filename>pppatch</filename>
            <type>text/plain</type>
            <size>1300</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL2NfY2xhc3MuY3BwIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL2MvY19jbGFzcy5jcHAKaW5kZXggNzJiZjJjZC4uZTk2NDUyMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19jbGFzcy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL2MvY19jbGFzcy5jcHAKQEAgLTc4LDkgKzc4LDkgQEAgTWV0aG9kKiBD
Q2xhc3M6Om1ldGhvZE5hbWVkKFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEluc3RhbmNlKiBp
bnN0YW5jZSkgY29uc3QKICAgICBjb25zdCBDSW5zdGFuY2UqIGluc3QgPSBzdGF0aWNfY2FzdDxj
b25zdCBDSW5zdGFuY2UqPihpbnN0YW5jZSk7CiAgICAgTlBPYmplY3QqIG9iaiA9IGluc3QtPmdl
dE9iamVjdCgpOwogICAgIGlmIChtX2lzYS0+aGFzTWV0aG9kICYmIG1faXNhLT5oYXNNZXRob2Qo
b2JqLCBpZGVudCkpIHsKLSAgICAgICAgT3duUHRyPE1ldGhvZD4gbWV0aG9kID0gYWRvcHRQdHIo
bmV3IENNZXRob2QoaWRlbnQpKTsKLSAgICAgICAgbV9tZXRob2RzLnNldChuYW1lLmltcGwoKSwg
bWV0aG9kLnJlbGVhc2UoKSk7Ci0gICAgICAgIHJldHVybiBtZXRob2QuZ2V0KCk7CisgICAgICAg
IE1ldGhvZCogbWV0aG9kID0gbmV3IENNZXRob2QoaWRlbnQpOworICAgICAgICBtX21ldGhvZHMu
c2V0KG5hbWUuaW1wbCgpLCBhZG9wdFB0cihtZXRob2QpKTsKKyAgICAgICAgcmV0dXJuIG1ldGhv
ZDsKICAgICB9CiAgICAgCiAgICAgcmV0dXJuIDA7CkBAIC05Nyw4ICs5Nyw5IEBAIEZpZWxkKiBD
Q2xhc3M6OmZpZWxkTmFtZWQoUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgSW5zdGFuY2UqIGlu
c3RhbmNlKSBjb25zdAogICAgIGNvbnN0IENJbnN0YW5jZSogaW5zdCA9IHN0YXRpY19jYXN0PGNv
bnN0IENJbnN0YW5jZSo+KGluc3RhbmNlKTsKICAgICBOUE9iamVjdCogb2JqID0gaW5zdC0+Z2V0
T2JqZWN0KCk7CiAgICAgaWYgKG1faXNhLT5oYXNQcm9wZXJ0eSAmJiBtX2lzYS0+aGFzUHJvcGVy
dHkob2JqLCBpZGVudCkpIHsKLSAgICAgICAgT3duUHRyPEZpZWxkPiBmaWVsZCA9IGFkb3B0UHRy
KG5ldyBDRmllbGQoaWRlbnQpKTsKLSAgICAgICAgbV9maWVsZHMuc2V0KG5hbWUuaW1wbCgpLCBm
aWVsZC5yZWxlYXNlKCkpOworICAgICAgICBGaWVsZCogZmllbGQgPSBuZXcgQ0ZpZWxkKGlkZW50
KTsKKyAgICAgICAgbV9maWVsZHMuc2V0KG5hbWUuaW1wbCgpLCBhZG9wdFB0cihmaWVsZCkpOwor
ICAgICAgICByZXR1cm4gZmllbGQ7CiAgICAgfQogCiAgICAgcmV0dXJuIDA7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209874</attachid>
            <date>2013-08-28 06:37:54 -0700</date>
            <delta_ts>2013-08-28 07:02:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-120398-20130828063754.patch</filename>
            <type>text/plain</type>
            <size>2162</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDczOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEzLTA4LTI4ICBaYW4gRG9i
ZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIxNTQ3
MDgpOiBJdCBicm9rZSBhbGwgcGx1Z2luIHRlc3RzIG9uIEdUSyBhbmQgUXQgV0sxCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjAzOTgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJyaWRnZS9jL2NfY2xh
c3MuY3BwOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6Q0NsYXNzOjptZXRob2ROYW1lZCk6IEtl
ZXAgdGhlIHBvaW50ZXIgb2YgdGhlIG5ldyBDTWV0aG9kIG9iamVjdAorICAgICAgICB0byByZXR1
cm4gaXQgYWZ0ZXIgaXQncyBhZG9wdGVkIGJ5IHRoZSBuZXcgSGFzaE1hcCBlbnRyeS4KKyAgICAg
ICAgKEpTQzo6QmluZGluZ3M6OkNDbGFzczo6ZmllbGROYW1lZCk6IFRoZSBwb2ludGVyIHRvIHRo
ZSBuZXdseSBjcmVhdGVkIENGaWVsZCBvYmplY3QKKyAgICAgICAgc2hvdWxkIGJlIHJldHVybmVk
IGluIHRoaXMgYnJhbmNoLCBtYXRjaGluZyB0aGUgYmVoYXZpb3IgYmVmb3JlIHIxNTQ3MDguCisK
IDIwMTMtMDgtMjggIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAg
IERvbid0IHVzZSBOb2RlUmVuZGVyaW5nQ29udGV4dCB3aGVuIGF0dGFjaGluZyB0ZXh0IHJlbmRl
cmVycwpJbmRleDogU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19jbGFzcy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19jbGFzcy5jcHAJKHJldmlzaW9uIDE1NDcz
OSkKKysrIFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL2NfY2xhc3MuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC03OCw5ICs3OCw5IEBAIE1ldGhvZCogQ0NsYXNzOjptZXRob2ROYW1lZChQcm9wZXJ0eU5h
bWUKICAgICBjb25zdCBDSW5zdGFuY2UqIGluc3QgPSBzdGF0aWNfY2FzdDxjb25zdCBDSW5zdGFu
Y2UqPihpbnN0YW5jZSk7CiAgICAgTlBPYmplY3QqIG9iaiA9IGluc3QtPmdldE9iamVjdCgpOwog
ICAgIGlmIChtX2lzYS0+aGFzTWV0aG9kICYmIG1faXNhLT5oYXNNZXRob2Qob2JqLCBpZGVudCkp
IHsKLSAgICAgICAgT3duUHRyPE1ldGhvZD4gbWV0aG9kID0gYWRvcHRQdHIobmV3IENNZXRob2Qo
aWRlbnQpKTsKLSAgICAgICAgbV9tZXRob2RzLnNldChuYW1lLmltcGwoKSwgbWV0aG9kLnJlbGVh
c2UoKSk7Ci0gICAgICAgIHJldHVybiBtZXRob2QuZ2V0KCk7CisgICAgICAgIE1ldGhvZCogbWV0
aG9kID0gbmV3IENNZXRob2QoaWRlbnQpOworICAgICAgICBtX21ldGhvZHMuc2V0KG5hbWUuaW1w
bCgpLCBhZG9wdFB0cihtZXRob2QpKTsKKyAgICAgICAgcmV0dXJuIG1ldGhvZDsKICAgICB9CiAg
ICAgCiAgICAgcmV0dXJuIDA7CkBAIC05Nyw4ICs5Nyw5IEBAIEZpZWxkKiBDQ2xhc3M6OmZpZWxk
TmFtZWQoUHJvcGVydHlOYW1lIHAKICAgICBjb25zdCBDSW5zdGFuY2UqIGluc3QgPSBzdGF0aWNf
Y2FzdDxjb25zdCBDSW5zdGFuY2UqPihpbnN0YW5jZSk7CiAgICAgTlBPYmplY3QqIG9iaiA9IGlu
c3QtPmdldE9iamVjdCgpOwogICAgIGlmIChtX2lzYS0+aGFzUHJvcGVydHkgJiYgbV9pc2EtPmhh
c1Byb3BlcnR5KG9iaiwgaWRlbnQpKSB7Ci0gICAgICAgIE93blB0cjxGaWVsZD4gZmllbGQgPSBh
ZG9wdFB0cihuZXcgQ0ZpZWxkKGlkZW50KSk7Ci0gICAgICAgIG1fZmllbGRzLnNldChuYW1lLmlt
cGwoKSwgZmllbGQucmVsZWFzZSgpKTsKKyAgICAgICAgRmllbGQqIGZpZWxkID0gbmV3IENGaWVs
ZChpZGVudCk7CisgICAgICAgIG1fZmllbGRzLnNldChuYW1lLmltcGwoKSwgYWRvcHRQdHIoZmll
bGQpKTsKKyAgICAgICAgcmV0dXJuIGZpZWxkOwogICAgIH0KIAogICAgIHJldHVybiAwOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>