<?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>49198</bug_id>
          
          <creation_ts>2010-11-08 12:07:31 -0800</creation_ts>
          <short_desc>NPClass::construct and NPClass::invokeDefault never called with out-of-process plug-ins in WebKit2</short_desc>
          <delta_ts>2010-11-08 12:35:33 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>306273</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-11-08 12:07:31 -0800</bug_when>
    <thetext>NPClass::construct and NPClass::invokeDefault never called with out-of-process plug-ins in WebKit2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306275</commentid>
    <comment_count>1</comment_count>
      <attachid>73264</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-11-08 12:09:17 -0800</bug_when>
    <thetext>Created attachment 73264
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306279</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-11-08 12:12:22 -0800</bug_when>
    <thetext>Attachment 73264 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/platform/mac-snowleopard/Skipped&apos;, u&apos;LayoutTests/platform/mac-wk2/Skipped&apos;, u&apos;WebKit2/ChangeLog&apos;, u&apos;WebKit2/Shared/Plugins/NPObjectMessageReceiver.cpp&apos;, u&apos;WebKit2/Shared/Plugins/NPObjectMessageReceiver.h&apos;, u&apos;WebKit2/Shared/Plugins/NPObjectMessageReceiver.messages.in&apos;, u&apos;WebKit2/Shared/Plugins/NPObjectProxy.cpp&apos;, u&apos;WebKit2/Shared/Plugins/NPObjectProxy.h&apos;]&quot; exit_code: 1
WebKit2/Shared/Plugins/NPObjectProxy.cpp:303:  NPObjectProxy::NP_InvokeDefault is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebKit2/Shared/Plugins/NPObjectProxy.cpp:333:  NPObjectProxy::NP_Construct is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306280</commentid>
    <comment_count>3</comment_count>
      <attachid>73264</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-11-08 12:12:54 -0800</bug_when>
    <thetext>Comment on attachment 73264
Patch

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

&gt; WebKit2/Shared/Plugins/NPObjectMessageReceiver.cpp:108
&gt; +    Vector&lt;NPVariant&gt; arguments;
&gt; +    for (size_t i = 0; i &lt; argumentsData.size(); ++i)
&gt; +        arguments.append(m_npRemoteObjectMap-&gt;npVariantDataToNPVariant(argumentsData[i]));

Maybe it would be better to give arguments an initial size?

&gt; WebKit2/Shared/Plugins/NPObjectMessageReceiver.cpp:113
&gt; +    if (!returnValue)
&gt; +        return;

Whoops! You just leaked the NPVariants in arguments!

&gt; WebKit2/Shared/Plugins/NPObjectMessageReceiver.cpp:215
&gt; +    Vector&lt;NPVariant&gt; arguments;
&gt; +    for (size_t i = 0; i &lt; argumentsData.size(); ++i)
&gt; +        arguments.append(m_npRemoteObjectMap-&gt;npVariantDataToNPVariant(argumentsData[i]));
&gt; +
&gt; +    NPVariant result;
&gt; +    returnValue = m_npObject-&gt;_class-&gt;construct(m_npObject, arguments.data(), arguments.size(), &amp;result);
&gt; +    if (!returnValue)
&gt; +        return;

Same comments here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>306290</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-11-08 12:35:33 -0800</bug_when>
    <thetext>Committed r71559: &lt;http://trac.webkit.org/changeset/71559&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>73264</attachid>
            <date>2010-11-08 12:09:17 -0800</date>
            <delta_ts>2010-11-08 12:12:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-49198-20101108120916.patch</filename>
            <type>text/plain</type>
            <size>13736</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjZDMzZWViZjA0ZTg4M2QzMTA4NmU1ODM4NWYxNjk4YmNhMGUxYmFmLi40MTcyNGM4
NjE5ZDhlYTY4ZTcxMGFjNWIzZjUwOGMxOWUyNjBjNDNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMTEtMDggIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOUENsYXNzOjpjb25z
dHJ1Y3QgYW5kIE5QQ2xhc3M6Omludm9rZURlZmF1bHQgbmV2ZXIgY2FsbGVkIHdpdGggb3V0LW9m
LXByb2Nlc3MgcGx1Zy1pbnMgaW4gV2ViS2l0MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDkxOTgKKworICAgICAgICBSZW1vdmUgbm93IHBhc3Npbmcg
dGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtc25vd2xlb3BhcmQvU2tpcHBlZDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL1NraXBwZWQ6CisKIDIwMTAtMTEtMDggIFNpbW9uIEZy
YXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFu
IEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1zbm93bGVv
cGFyZC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXNub3dsZW9wYXJkL1NraXBw
ZWQKaW5kZXggZDQ2MWRjN2FkMDVlYzU5Zjg1MjMzODU4MWY3ZTJkOTIxOTgyNjkzOS4uYzI3ZmRl
OGE3NjVhMzE2MjI0Y2E5NjViZjNhMzBkYjIwZmE2OTA3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXNub3dsZW9wYXJkL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjLXNub3dsZW9wYXJkL1NraXBwZWQKQEAgLTE5LDcgKzE5LDYgQEAgcGx1Z2lucy9k
ZXN0cm95LXBsdWdpbi1mcm9tLWNhbGxiYWNrLmh0bWwKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM2NDYyCiBwbHVnaW5zL2tleWJvYXJkLWV2ZW50cy5odG1sCiBw
bHVnaW5zL21vdXNlLWV2ZW50cy1maXhlZHBvcy5odG1sCi1wbHVnaW5zL25wcnVudGltZS9jb25z
dHJ1Y3QuaHRtbAogCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
MDUyOCAtIHRlc3Qgc3RhcnRlZCBmYWlsaW5nCiAjIGltbWVkaWF0ZWx5IG9uIFNub3cgTGVvcGFy
ZCBkdWUgdG8gdGhlIGV4cGVjdGVkIGV4Y2VwdGlvbiBub3QgYmVpbmcKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvU2tpcHBlZAppbmRleCA2N2UzMmYyZTZmZjZlZTZmOWUzZTVmZDcxYzcxMTM3Nzhk
MTU3ZTZjLi5iNTg0N2YwNjAyYzYyNjQ4M2E4YzY2YWQ5MGQwNmE5NDM4NDdiZjQzIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1NraXBwZWQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMi9Ta2lwcGVkCkBAIC0xNzI2LDcgKzE3MjYsNiBAQCBwbHVnaW5z
L3NldC1zdGF0dXMuaHRtbAogcGx1Z2lucy91cGRhdGUtd2lkZ2V0cy1jcmFzaC5odG1sCiBwbHVn
aW5zL3dpbmRvdy1vcGVuLmh0bWwKIHBsdWdpbnMvbnBydW50aW1lL2lkZW50aWZpZXItY29udmVy
c2lvbi5odG1sCi1wbHVnaW5zL25wcnVudGltZS9pbnZva2UtZGVmYXVsdC5odG1sCiBwbHVnaW5z
L25wcnVudGltZS9wbHVnaW4tc2NyaXB0YWJsZS1vYmplY3QtaW52b2tlLWRlZmF1bHQuaHRtbAog
IAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpkaWZmIC0tZ2l0IGEv
V2ViS2l0Mi9DaGFuZ2VMb2cgYi9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAwYzJmYTM2MDZlOWQx
OWEyNjRlODg2ZGMyN2EyOWZmMTBhNjViYzRmLi45NWEzMDMyZTBiNTc4Y2YyNDZmZTc3Y2U3ZWEx
MDEwZjZiNDkyYTJlIDEwMDY0NAotLS0gYS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9XZWJLaXQy
L0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM1IEBACiAyMDEwLTExLTA4ICBBbmRlcnMgQ2FybHNzb24g
IDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgTlBDbGFzczo6Y29uc3RydWN0IGFuZCBOUENsYXNzOjppbnZva2VEZWZh
dWx0IG5ldmVyIGNhbGxlZCB3aXRoIG91dC1vZi1wcm9jZXNzIHBsdWctaW5zIGluIFdlYktpdDIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MTk4CisK
KyAgICAgICAgKiBTaGFyZWQvUGx1Z2lucy9OUE9iamVjdE1lc3NhZ2VSZWNlaXZlci5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6Ok5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyOjppbnZva2VEZWZhdWx0KToK
KyAgICAgICAgQ2FsbCBOUENsYXNzOjppbnZva2VEZWZhdWx0LgorCisgICAgICAgIChXZWJLaXQ6
Ok5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyOjpjb25zdHJ1Y3QpOgorICAgICAgICBDYWxsIE5QQ2xh
c3M6OmNvbnN0cnVjdAorICAgICAgICAKKyAgICAgICAgKiBTaGFyZWQvUGx1Z2lucy9OUE9iamVj
dE1lc3NhZ2VSZWNlaXZlci5tZXNzYWdlcy5pbjoKKyAgICAgICAgQWRkIEludm9rZURlZmF1bHQg
YW5kIENvbnN0cnVjdCBtZXNzYWdlcy4KKworICAgICAgICAqIFNoYXJlZC9QbHVnaW5zL05QT2Jq
ZWN0UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpOUE9iamVjdFByb3h5OjppbnZva2VEZWZh
dWx0KToKKyAgICAgICAgU2VuZCB0aGUgSW52b2tlRGVmYXVsdCBtZXNzYWdlLgorCisgICAgICAg
IChXZWJLaXQ6Ok5QT2JqZWN0UHJveHk6OmNvbnN0cnVjdCk6CisgICAgICAgIFNlbmQgdGhlIENv
bnN0cnVjdCBtZXNzYWdlLgorCisgICAgICAgIChXZWJLaXQ6Ok5QT2JqZWN0UHJveHk6Ok5QX0lu
dm9rZURlZmF1bHQpOgorICAgICAgICBDYWxsIE5QT2JqZWN0UHJveHk6Omludm9rZURlZmF1bHQu
CisKKyAgICAgICAgKFdlYktpdDo6TlBPYmplY3RQcm94eTo6TlBfQ29uc3RydWN0KToKKyAgICAg
ICAgQ2FsbCBOUE9iamVjdFByb3h5Ojpjb25zdHJ1Y3QuCisKKzIwMTAtMTEtMDggIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBieSBEYW4g
QmVybnN0ZWluLgogCiAgICAgICAgIFBsdWctaW4gdmlld3Mgc2hvdWxkIG5vdCBhc3N1bWUgdGhh
dCBwbHVnaW5zIGFyZSBSZW5kZXJFbWJlZGRlZE9iamVjdHMKZGlmZiAtLWdpdCBhL1dlYktpdDIv
U2hhcmVkL1BsdWdpbnMvTlBPYmplY3RNZXNzYWdlUmVjZWl2ZXIuY3BwIGIvV2ViS2l0Mi9TaGFy
ZWQvUGx1Z2lucy9OUE9iamVjdE1lc3NhZ2VSZWNlaXZlci5jcHAKaW5kZXggYzcxZDQwOThhOWU2
NDZlYjY3M2VjYWQwODhhOGMyZTc5YTVhMmYzNy4uNjFlMzZlMTJlODFmNTUxYzhhZjJkMWJhZTFj
OTY0ZWU1NTY1NDIzZiAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVj
dE1lc3NhZ2VSZWNlaXZlci5jcHAKKysrIGIvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVj
dE1lc3NhZ2VSZWNlaXZlci5jcHAKQEAgLTMxLDcgKzMxLDYgQEAKICNpbmNsdWRlICJOUFJlbW90
ZU9iamVjdE1hcC5oIgogI2luY2x1ZGUgIk5QUnVudGltZVV0aWxpdGllcy5oIgogI2luY2x1ZGUg
Ik5QVmFyaWFudERhdGEuaCIKLSNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIApAQCAtOTcsNiArOTYsMzMgQEAgdm9pZCBOUE9iamVjdE1lc3NhZ2VSZWNl
aXZlcjo6aW52b2tlKGNvbnN0IE5QSWRlbnRpZmllckRhdGEmIG1ldGhvZE5hbWVEYXRhLCBjb24K
ICAgICByZWxlYXNlTlBWYXJpYW50VmFsdWUoJnJlc3VsdCk7CiB9CiAKK3ZvaWQgTlBPYmplY3RN
ZXNzYWdlUmVjZWl2ZXI6Omludm9rZURlZmF1bHQoY29uc3QgVmVjdG9yPE5QVmFyaWFudERhdGE+
JiBhcmd1bWVudHNEYXRhLCBib29sJiByZXR1cm5WYWx1ZSwgTlBWYXJpYW50RGF0YSYgcmVzdWx0
RGF0YSkKK3sKKyAgICBpZiAoIW1fbnBPYmplY3QtPl9jbGFzcy0+aW52b2tlRGVmYXVsdCkgewor
ICAgICAgICByZXR1cm5WYWx1ZSA9IGZhbHNlOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgVmVjdG9yPE5QVmFyaWFudD4gYXJndW1lbnRzOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgYXJndW1lbnRzRGF0YS5zaXplKCk7ICsraSkKKyAgICAgICAgYXJndW1lbnRzLmFwcGVuZCht
X25wUmVtb3RlT2JqZWN0TWFwLT5ucFZhcmlhbnREYXRhVG9OUFZhcmlhbnQoYXJndW1lbnRzRGF0
YVtpXSkpOworCisgICAgTlBWYXJpYW50IHJlc3VsdDsKKyAgICByZXR1cm5WYWx1ZSA9IG1fbnBP
YmplY3QtPl9jbGFzcy0+aW52b2tlRGVmYXVsdChtX25wT2JqZWN0LCBhcmd1bWVudHMuZGF0YSgp
LCBhcmd1bWVudHMuc2l6ZSgpLCAmcmVzdWx0KTsKKyAgICBpZiAoIXJldHVyblZhbHVlKQorICAg
ICAgICByZXR1cm47CisgICAgCisgICAgLy8gQ29udmVydCB0aGUgTlBWYXJpYW50IHRvIGFuIE5Q
VmFyaWFudERhdGEuCisgICAgcmVzdWx0RGF0YSA9IG1fbnBSZW1vdGVPYmplY3RNYXAtPm5wVmFy
aWFudFRvTlBWYXJpYW50RGF0YShyZXN1bHQpOworCisgICAgLy8gUmVsZWFzZSBhbGwgYXJndW1l
bnRzLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgYXJndW1lbnRzRGF0YS5zaXplKCk7ICsr
aSkKKyAgICAgICAgcmVsZWFzZU5QVmFyaWFudFZhbHVlKCZhcmd1bWVudHNbaV0pOworICAgIAor
ICAgIC8vIEFuZCByZWxlYXNlIHRoZSByZXN1bHQuCisgICAgcmVsZWFzZU5QVmFyaWFudFZhbHVl
KCZyZXN1bHQpOworfQorCiB2b2lkIE5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyOjpoYXNQcm9wZXJ0
eShjb25zdCBOUElkZW50aWZpZXJEYXRhJiBwcm9wZXJ0eU5hbWVEYXRhLCBib29sJiByZXR1cm5W
YWx1ZSkKIHsKICAgICBpZiAoIW1fbnBPYmplY3QtPl9jbGFzcy0+aGFzUHJvcGVydHkpIHsKQEAg
LTE3Miw2ICsxOTgsMzMgQEAgdm9pZCBOUE9iamVjdE1lc3NhZ2VSZWNlaXZlcjo6ZW51bWVyYXRl
KGJvb2wmIHJldHVyblZhbHVlLCBWZWN0b3I8TlBJZGVudGlmaWVyRGEKICAgICBucG5NZW1GcmVl
KGlkZW50aWZpZXJzKTsKIH0KIAordm9pZCBOUE9iamVjdE1lc3NhZ2VSZWNlaXZlcjo6Y29uc3Ry
dWN0KGNvbnN0IFZlY3RvcjxOUFZhcmlhbnREYXRhPiYgYXJndW1lbnRzRGF0YSwgYm9vbCYgcmV0
dXJuVmFsdWUsIE5QVmFyaWFudERhdGEmIHJlc3VsdERhdGEpCit7CisgICAgaWYgKCFOUF9DTEFT
U19TVFJVQ1RfVkVSU0lPTl9IQVNfQ1RPUihtX25wT2JqZWN0LT5fY2xhc3MpIHx8ICFtX25wT2Jq
ZWN0LT5fY2xhc3MtPmNvbnN0cnVjdCkgeworICAgICAgICByZXR1cm5WYWx1ZSA9IGZhbHNlOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgVmVjdG9yPE5QVmFyaWFudD4gYXJndW1lbnRz
OworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgYXJndW1lbnRzRGF0YS5zaXplKCk7ICsraSkK
KyAgICAgICAgYXJndW1lbnRzLmFwcGVuZChtX25wUmVtb3RlT2JqZWN0TWFwLT5ucFZhcmlhbnRE
YXRhVG9OUFZhcmlhbnQoYXJndW1lbnRzRGF0YVtpXSkpOworCisgICAgTlBWYXJpYW50IHJlc3Vs
dDsKKyAgICByZXR1cm5WYWx1ZSA9IG1fbnBPYmplY3QtPl9jbGFzcy0+Y29uc3RydWN0KG1fbnBP
YmplY3QsIGFyZ3VtZW50cy5kYXRhKCksIGFyZ3VtZW50cy5zaXplKCksICZyZXN1bHQpOworICAg
IGlmICghcmV0dXJuVmFsdWUpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICAvLyBDb252ZXJ0
IHRoZSBOUFZhcmlhbnQgdG8gYW4gTlBWYXJpYW50RGF0YS4KKyAgICByZXN1bHREYXRhID0gbV9u
cFJlbW90ZU9iamVjdE1hcC0+bnBWYXJpYW50VG9OUFZhcmlhbnREYXRhKHJlc3VsdCk7CisKKyAg
ICAvLyBSZWxlYXNlIGFsbCBhcmd1bWVudHMuCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBh
cmd1bWVudHNEYXRhLnNpemUoKTsgKytpKQorICAgICAgICByZWxlYXNlTlBWYXJpYW50VmFsdWUo
JmFyZ3VtZW50c1tpXSk7CisgICAgCisgICAgLy8gQW5kIHJlbGVhc2UgdGhlIHJlc3VsdC4KKyAg
ICByZWxlYXNlTlBWYXJpYW50VmFsdWUoJnJlc3VsdCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKFBMVUdJTl9QUk9DRVNTKQpkaWZmIC0tZ2l0IGEvV2Vi
S2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVjdE1lc3NhZ2VSZWNlaXZlci5oIGIvV2ViS2l0Mi9T
aGFyZWQvUGx1Z2lucy9OUE9iamVjdE1lc3NhZ2VSZWNlaXZlci5oCmluZGV4IGNiZmEwMjBkZDEz
NmQ5YzM3ZDQ5OWQwNDZkNzQ5N2Q0ZmE2NjAwNjYuLmQzMzYzZjllZmQ2YThkYTA5ODc5YTYxOWEz
MGQwMmFlMWNlOTRkN2EgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvU2hhcmVkL1BsdWdpbnMvTlBPYmpl
Y3RNZXNzYWdlUmVjZWl2ZXIuaAorKysgYi9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL05QT2JqZWN0
TWVzc2FnZVJlY2VpdmVyLmgKQEAgLTU3LDExICs1NywxMyBAQCBwcml2YXRlOgogICAgIHZvaWQg
ZGVhbGxvY2F0ZSgpOwogICAgIHZvaWQgaGFzTWV0aG9kKGNvbnN0IE5QSWRlbnRpZmllckRhdGEm
LCBib29sJiByZXR1cm5WYWx1ZSk7CiAgICAgdm9pZCBpbnZva2UoY29uc3QgTlBJZGVudGlmaWVy
RGF0YSYsIGNvbnN0IFZlY3RvcjxOUFZhcmlhbnREYXRhPiYgYXJndW1lbnRzRGF0YSwgYm9vbCYg
cmV0dXJuVmFsdWUsIE5QVmFyaWFudERhdGEmIHJlc3VsdERhdGEpOworICAgIHZvaWQgaW52b2tl
RGVmYXVsdChjb25zdCBWZWN0b3I8TlBWYXJpYW50RGF0YT4mIGFyZ3VtZW50c0RhdGEsIGJvb2wm
IHJldHVyblZhbHVlLCBOUFZhcmlhbnREYXRhJiByZXN1bHREYXRhKTsKICAgICB2b2lkIGhhc1By
b3BlcnR5KGNvbnN0IE5QSWRlbnRpZmllckRhdGEmLCBib29sJiByZXR1cm5WYWx1ZSk7CiAgICAg
dm9pZCBnZXRQcm9wZXJ0eShjb25zdCBOUElkZW50aWZpZXJEYXRhJiwgYm9vbCYgcmV0dXJuVmFs
dWUsIE5QVmFyaWFudERhdGEmIHJlc3VsdERhdGEpOwogICAgIHZvaWQgc2V0UHJvcGVydHkoY29u
c3QgTlBJZGVudGlmaWVyRGF0YSYsIGNvbnN0IE5QVmFyaWFudERhdGEmIHByb3BlcnR5VmFsdWVE
YXRhLCBib29sJiByZXR1cm5WYWx1ZSk7CiAgICAgdm9pZCByZW1vdmVQcm9wZXJ0eShjb25zdCBO
UElkZW50aWZpZXJEYXRhJiwgYm9vbCYgcmV0dXJuVmFsdWUpOwogICAgIHZvaWQgZW51bWVyYXRl
KGJvb2wmIHJldHVyblZhbHVlLCBWZWN0b3I8TlBJZGVudGlmaWVyRGF0YT4mIGlkZW50aWZpZXJz
RGF0YSk7CisgICAgdm9pZCBjb25zdHJ1Y3QoY29uc3QgVmVjdG9yPE5QVmFyaWFudERhdGE+JiBh
cmd1bWVudHNEYXRhLCBib29sJiByZXR1cm5WYWx1ZSwgTlBWYXJpYW50RGF0YSYgcmVzdWx0RGF0
YSk7CiAKICAgICBOUFJlbW90ZU9iamVjdE1hcCogbV9ucFJlbW90ZU9iamVjdE1hcDsKICAgICB1
aW50NjRfdCBtX25wT2JqZWN0SUQ7CmRpZmYgLS1naXQgYS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5z
L05QT2JqZWN0TWVzc2FnZVJlY2VpdmVyLm1lc3NhZ2VzLmluIGIvV2ViS2l0Mi9TaGFyZWQvUGx1
Z2lucy9OUE9iamVjdE1lc3NhZ2VSZWNlaXZlci5tZXNzYWdlcy5pbgppbmRleCA3YjUxYjFkNDgy
Njg1NmI2MmRkNjBjMWVhNGFmMjA2OGM5Y2Q1MDkxLi5kODFmZmM0NTUwNzgxMmU3YzVmMTJmOWY0
MDM4ZmJjZjZhYTZhY2ZlIDEwMDY0NAotLS0gYS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL05QT2Jq
ZWN0TWVzc2FnZVJlY2VpdmVyLm1lc3NhZ2VzLmluCisrKyBiL1dlYktpdDIvU2hhcmVkL1BsdWdp
bnMvTlBPYmplY3RNZXNzYWdlUmVjZWl2ZXIubWVzc2FnZXMuaW4KQEAgLTI2LDExICsyNiwxMyBA
QCBtZXNzYWdlcyAtPiBOUE9iamVjdE1lc3NhZ2VSZWNlaXZlciB7CiAgICAgRGVhbGxvY2F0ZSgp
IC0+ICgpCiAgICAgSGFzTWV0aG9kKFdlYktpdDo6TlBJZGVudGlmaWVyRGF0YSBtZXRob2ROYW1l
KSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkKICAgICBJbnZva2UoV2ViS2l0OjpOUElkZW50aWZpZXJE
YXRhIG1ldGhvZE5hbWUsIFZlY3RvcjxXZWJLaXQ6Ok5QVmFyaWFudERhdGE+IGFyZ3VtZW50c0Rh
dGEpIC0+IChib29sIHJldHVyblZhbHVlLCBXZWJLaXQ6Ok5QVmFyaWFudERhdGEgcmVzdWx0RGF0
YSkKKyAgICBJbnZva2VEZWZhdWx0KFZlY3RvcjxXZWJLaXQ6Ok5QVmFyaWFudERhdGE+IGFyZ3Vt
ZW50c0RhdGEpIC0+IChib29sIHJldHVyblZhbHVlLCBXZWJLaXQ6Ok5QVmFyaWFudERhdGEgcmVz
dWx0RGF0YSkKICAgICBIYXNQcm9wZXJ0eShXZWJLaXQ6Ok5QSWRlbnRpZmllckRhdGEgcHJvcGVy
dHlOYW1lKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkKICAgICBHZXRQcm9wZXJ0eShXZWJLaXQ6Ok5Q
SWRlbnRpZmllckRhdGEgcHJvcGVydHlOYW1lKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSwgV2ViS2l0
OjpOUFZhcmlhbnREYXRhIHJlc3VsdERhdGEpCiAgICAgU2V0UHJvcGVydHkoV2ViS2l0OjpOUElk
ZW50aWZpZXJEYXRhIHByb3BlcnR5TmFtZSwgV2ViS2l0OjpOUFZhcmlhbnREYXRhIHByb3BlcnR5
VmFsdWVEYXRhKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkKICAgICBSZW1vdmVQcm9wZXJ0eShXZWJL
aXQ6Ok5QSWRlbnRpZmllckRhdGEgcHJvcGVydHlOYW1lKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSkK
ICAgICBFbnVtZXJhdGUoKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSwgVmVjdG9yPFdlYktpdDo6TlBJ
ZGVudGlmaWVyRGF0YT4gaWRlbnRpZmllcnNEYXRhKQorICAgIENvbnN0cnVjdChWZWN0b3I8V2Vi
S2l0OjpOUFZhcmlhbnREYXRhPiBhcmd1bWVudHNEYXRhKSAtPiAoYm9vbCByZXR1cm5WYWx1ZSwg
V2ViS2l0OjpOUFZhcmlhbnREYXRhIHJlc3VsdERhdGEpCiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVjdFByb3h5LmNwcCBiL1dlYktpdDIvU2hh
cmVkL1BsdWdpbnMvTlBPYmplY3RQcm94eS5jcHAKaW5kZXggMzZjYTAxYTVkNjI1NzAxZWJhMzlm
MDRhNDFjNDJiZmIxYzBiNGNmMy4uZTdmYzQ3ZmM2Y2VmMzJmYTdiYWYzZmY4ZDNkNGNiYjY1ZWFk
NTNmYyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVjdFByb3h5LmNw
cAorKysgYi9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL05QT2JqZWN0UHJveHkuY3BwCkBAIC0zNCw3
ICszNCw2IEBACiAjaW5jbHVkZSAiTlBSZW1vdGVPYmplY3RNYXAuaCIKICNpbmNsdWRlICJOUFJ1
bnRpbWVVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJOUFZhcmlhbnREYXRhLmgiCi0jaW5jbHVkZSAi
Tm90SW1wbGVtZW50ZWQuaCIKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAgLTEyMyw2ICsxMjIs
MjggQEAgYm9vbCBOUE9iamVjdFByb3h5OjppbnZva2UoTlBJZGVudGlmaWVyIG1ldGhvZE5hbWUs
IGNvbnN0IE5QVmFyaWFudCogYXJndW1lbnRzLAogICAgIHJldHVybiB0cnVlOwogfQogCitib29s
IE5QT2JqZWN0UHJveHk6Omludm9rZURlZmF1bHQoY29uc3QgTlBWYXJpYW50KiBhcmd1bWVudHMs
IHVpbnQzMl90IGFyZ3VtZW50Q291bnQsIE5QVmFyaWFudCogcmVzdWx0KQoreworICAgIGlmICgh
bV9ucFJlbW90ZU9iamVjdE1hcCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgVmVjdG9y
PE5QVmFyaWFudERhdGE+IGFyZ3VtZW50c0RhdGE7CisgICAgZm9yICh1aW50MzJfdCBpID0gMDsg
aSA8IGFyZ3VtZW50Q291bnQ7ICsraSkKKyAgICAgICAgYXJndW1lbnRzRGF0YS5hcHBlbmQobV9u
cFJlbW90ZU9iamVjdE1hcC0+bnBWYXJpYW50VG9OUFZhcmlhbnREYXRhKGFyZ3VtZW50c1tpXSkp
OworCisgICAgYm9vbCByZXR1cm5WYWx1ZSA9IGZhbHNlOworICAgIE5QVmFyaWFudERhdGEgcmVz
dWx0RGF0YTsKKyAgICAKKyAgICBpZiAoIW1fbnBSZW1vdGVPYmplY3RNYXAtPmNvbm5lY3Rpb24o
KS0+c2VuZFN5bmMoTWVzc2FnZXM6Ok5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyOjpJbnZva2VEZWZh
dWx0KGFyZ3VtZW50c0RhdGEpLCBNZXNzYWdlczo6TlBPYmplY3RNZXNzYWdlUmVjZWl2ZXI6Oklu
dm9rZURlZmF1bHQ6OlJlcGx5KHJldHVyblZhbHVlLCByZXN1bHREYXRhKSwgbV9ucE9iamVjdElE
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIAorICAgIGlmICghcmV0dXJuVmFsdWUpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAKKyAgICAqcmVzdWx0ID0gbV9ucFJlbW90ZU9iamVj
dE1hcC0+bnBWYXJpYW50RGF0YVRvTlBWYXJpYW50KHJlc3VsdERhdGEpOworICAgIHJldHVybiB0
cnVlOworfQorCiBib29sIE5QT2JqZWN0UHJveHk6Omhhc1Byb3BlcnR5KE5QSWRlbnRpZmllciBw
cm9wZXJ0eU5hbWUpCiB7CiAgICAgaWYgKCFtX25wUmVtb3RlT2JqZWN0TWFwKQpAQCAtMjEzLDYg
KzIzNCwyOCBAQCBib29sIE5QT2JqZWN0UHJveHk6OmVudW1lcmF0ZShOUElkZW50aWZpZXIqKiBp
ZGVudGlmaWVycywgdWludDMyX3QqIGlkZW50aWZpZXJDbwogICAgIHJldHVybiB0cnVlOwogfQog
Citib29sIE5QT2JqZWN0UHJveHk6OmNvbnN0cnVjdChjb25zdCBOUFZhcmlhbnQqIGFyZ3VtZW50
cywgdWludDMyX3QgYXJndW1lbnRDb3VudCwgTlBWYXJpYW50KiByZXN1bHQpCit7CisgICAgaWYg
KCFtX25wUmVtb3RlT2JqZWN0TWFwKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBWZWN0
b3I8TlBWYXJpYW50RGF0YT4gYXJndW1lbnRzRGF0YTsKKyAgICBmb3IgKHVpbnQzMl90IGkgPSAw
OyBpIDwgYXJndW1lbnRDb3VudDsgKytpKQorICAgICAgICBhcmd1bWVudHNEYXRhLmFwcGVuZCht
X25wUmVtb3RlT2JqZWN0TWFwLT5ucFZhcmlhbnRUb05QVmFyaWFudERhdGEoYXJndW1lbnRzW2ld
KSk7CisKKyAgICBib29sIHJldHVyblZhbHVlID0gZmFsc2U7CisgICAgTlBWYXJpYW50RGF0YSBy
ZXN1bHREYXRhOworICAgIAorICAgIGlmICghbV9ucFJlbW90ZU9iamVjdE1hcC0+Y29ubmVjdGlv
bigpLT5zZW5kU3luYyhNZXNzYWdlczo6TlBPYmplY3RNZXNzYWdlUmVjZWl2ZXI6OkNvbnN0cnVj
dChhcmd1bWVudHNEYXRhKSwgTWVzc2FnZXM6Ok5QT2JqZWN0TWVzc2FnZVJlY2VpdmVyOjpDb25z
dHJ1Y3Q6OlJlcGx5KHJldHVyblZhbHVlLCByZXN1bHREYXRhKSwgbV9ucE9iamVjdElEKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIAorICAgIGlmICghcmV0dXJuVmFsdWUpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICAKKyAgICAqcmVzdWx0ID0gbV9ucFJlbW90ZU9iamVjdE1hcC0+
bnBWYXJpYW50RGF0YVRvTlBWYXJpYW50KHJlc3VsdERhdGEpOworICAgIHJldHVybiB0cnVlOwor
fQorCiBOUENsYXNzKiBOUE9iamVjdFByb3h5OjpucENsYXNzKCkKIHsKICAgICBzdGF0aWMgTlBD
bGFzcyBucENsYXNzID0gewpAQCAtMjU3LDEwICszMDAsOSBAQCBib29sIE5QT2JqZWN0UHJveHk6
Ok5QX0ludm9rZShOUE9iamVjdCogbnBPYmplY3QsIE5QSWRlbnRpZmllciBtZXRob2ROYW1lLCBj
b25zdAogICAgIHJldHVybiB0b05QT2JqZWN0UHJveHkobnBPYmplY3QpLT5pbnZva2UobWV0aG9k
TmFtZSwgYXJndW1lbnRzLCBhcmd1bWVudENvdW50LCByZXN1bHQpOwogfQogCi1ib29sIE5QT2Jq
ZWN0UHJveHk6Ok5QX0ludm9rZURlZmF1bHQoTlBPYmplY3QqLCBjb25zdCBOUFZhcmlhbnQqIGFy
Z3VtZW50cywgdWludDMyX3QgYXJndW1lbnRDb3VudCwgTlBWYXJpYW50KiByZXN1bHQpCitib29s
IE5QT2JqZWN0UHJveHk6Ok5QX0ludm9rZURlZmF1bHQoTlBPYmplY3QqIG5wT2JqZWN0LCBjb25z
dCBOUFZhcmlhbnQqIGFyZ3VtZW50cywgdWludDMyX3QgYXJndW1lbnRDb3VudCwgTlBWYXJpYW50
KiByZXN1bHQpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gZmFsc2U7Cisg
ICAgcmV0dXJuIHRvTlBPYmplY3RQcm94eShucE9iamVjdCktPmludm9rZURlZmF1bHQoYXJndW1l
bnRzLCBhcmd1bWVudENvdW50LCByZXN1bHQpOwogfQogCiBib29sIE5QT2JqZWN0UHJveHk6Ok5Q
X0hhc1Byb3BlcnR5KE5QT2JqZWN0KiBucE9iamVjdCwgTlBJZGVudGlmaWVyIHByb3BlcnR5TmFt
ZSkKQEAgLTI4OCwxMCArMzMwLDkgQEAgYm9vbCBOUE9iamVjdFByb3h5OjpOUF9FbnVtZXJhdGUo
TlBPYmplY3QqIG5wT2JqZWN0LCBOUElkZW50aWZpZXIqKiBpZGVudGlmaWVycywKICAgICByZXR1
cm4gdG9OUE9iamVjdFByb3h5KG5wT2JqZWN0KS0+ZW51bWVyYXRlKGlkZW50aWZpZXJzLCBpZGVu
dGlmaWVyQ291bnQpOwogfQogCi1ib29sIE5QT2JqZWN0UHJveHk6Ok5QX0NvbnN0cnVjdChOUE9i
amVjdCosIGNvbnN0IE5QVmFyaWFudCogYXJndW1lbnRzLCB1aW50MzJfdCBhcmd1bWVudENvdW50
LCBOUFZhcmlhbnQqIHJlc3VsdCkKK2Jvb2wgTlBPYmplY3RQcm94eTo6TlBfQ29uc3RydWN0KE5Q
T2JqZWN0KiBucE9iamVjdCwgY29uc3QgTlBWYXJpYW50KiBhcmd1bWVudHMsIHVpbnQzMl90IGFy
Z3VtZW50Q291bnQsIE5QVmFyaWFudCogcmVzdWx0KQogewotICAgIG5vdEltcGxlbWVudGVkKCk7
Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB0b05QT2JqZWN0UHJveHkobnBPYmplY3Qp
LT5jb25zdHJ1Y3QoYXJndW1lbnRzLCBhcmd1bWVudENvdW50LCByZXN1bHQpOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1dlYktpdDIvU2hhcmVkL1BsdWdpbnMvTlBP
YmplY3RQcm94eS5oIGIvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9iamVjdFByb3h5LmgKaW5k
ZXggNGZjMDJjZjJmOTAxYTA3YzdkNjk4Y2IzMTFkNzNkMzlkZTllMGYwNi4uZTRjMDBjNTQ4YzEx
MmZkNTg5NzlkZjg4NTFlOWE3MzMxNzQxODQ2ZCAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9TaGFyZWQv
UGx1Z2lucy9OUE9iamVjdFByb3h5LmgKKysrIGIvV2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9OUE9i
amVjdFByb3h5LmgKQEAgLTYxLDExICs2MSwxMyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBoYXNN
ZXRob2QoTlBJZGVudGlmaWVyIG1ldGhvZE5hbWUpOwogICAgIGJvb2wgaW52b2tlKE5QSWRlbnRp
ZmllciBtZXRob2ROYW1lLCBjb25zdCBOUFZhcmlhbnQqIGFyZ3VtZW50cywgdWludDMyX3QgYXJn
dW1lbnRDb3VudCwgTlBWYXJpYW50KiByZXN1bHQpOworICAgIGJvb2wgaW52b2tlRGVmYXVsdChj
b25zdCBOUFZhcmlhbnQqIGFyZ3VtZW50cywgdWludDMyX3QgYXJndW1lbnRDb3VudCwgTlBWYXJp
YW50KiByZXN1bHQpOwogICAgIGJvb2wgaGFzUHJvcGVydHkoTlBJZGVudGlmaWVyIHByb3BlcnR5
TmFtZSk7CiAgICAgYm9vbCBnZXRQcm9wZXJ0eShOUElkZW50aWZpZXIgcHJvcGVydHlOYW1lLCBO
UFZhcmlhbnQqIHJlc3VsdCk7CiAgICAgYm9vbCBzZXRQcm9wZXJ0eShOUElkZW50aWZpZXIgcHJv
cGVydHlOYW1lLCBjb25zdCBOUFZhcmlhbnQqIHZhbHVlKTsKICAgICBib29sIHJlbW92ZVByb3Bl
cnR5KE5QSWRlbnRpZmllciBwcm9wZXJ0eU5hbWUpOwogICAgIGJvb2wgZW51bWVyYXRlKE5QSWRl
bnRpZmllcioqIGlkZW50aWZpZXJzLCB1aW50MzJfdCogaWRlbnRpZmllckNvdW50KTsKKyAgICBi
b29sIGNvbnN0cnVjdChjb25zdCBOUFZhcmlhbnQqIGFyZ3VtZW50cywgdWludDMyX3QgYXJndW1l
bnRDb3VudCwgTlBWYXJpYW50KiByZXN1bHQpOwogCiAgICAgc3RhdGljIE5QQ2xhc3MqIG5wQ2xh
c3MoKTsKICAgICBzdGF0aWMgTlBPYmplY3QqIE5QX0FsbG9jYXRlKE5QUCwgTlBDbGFzcyopOwo=
</data>
<flag name="review"
          id="63661"
          type_id="1"
          status="+"
          setter="aroben"
    />
          </attachment>
      

    </bug>

</bugzilla>