<?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>36563</bug_id>
          
          <creation_ts>2010-03-24 15:43:06 -0700</creation_ts>
          <short_desc>A plug-in makes Safari crash on http://www.itscodingtime.com/</short_desc>
          <delta_ts>2010-03-25 09:54:10 -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>Plug-ins</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac (Intel)</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>203661</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-24 15:43:06 -0700</bug_when>
    <thetext>Steps to reproduce: install Silverlight, go to http://www.itscodingtime.com/.

Here is what happens:
1) WebKit calls NetscapePluginInstanceProxy::resize(), and starts waiting for reply.
2) Instead of a reply, it gets an WKPCGetProperty call from plug-in first.
3) The object the plug-in wants to get a property of is actually a plug-in object, so WebKit calls plugin host via ProxyInstance::fieldNamed().
4) Silverlight crashes, taking plug-in host with it.
5) NetscapePluginHostProxy::pluginHostDied() destroys host proxy object, and clears all references to it.
6) WebKit returns to &quot;event loop&quot; in NetscapePluginInstanceProxy::processRequestsAndWaitForReply, waiting for a reply to resize().
7) But m_pluginHostProxy is null already, so it crashes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203696</commentid>
    <comment_count>1</comment_count>
      <attachid>51566</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-24 17:23:59 -0700</bug_when>
    <thetext>Created attachment 51566
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203697</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-03-24 17:24:29 -0700</bug_when>
    <thetext>Attachment 51566 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebKit/mac/Plugins/Hosted/NetscapePluginHostProxy.h:46:  More than one command on the same line  [whitespace/newline] [4]
WebKit/mac/Plugins/Hosted/NetscapePluginHostProxy.h:47:  More than one command on the same line  [whitespace/newline] [4]
Total errors found: 2 in 4 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>203699</commentid>
    <comment_count>3</comment_count>
      <attachid>51566</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-03-24 17:30:34 -0700</bug_when>
    <thetext>Comment on attachment 51566
proposed fix


&gt; +unsigned NetscapePluginHostProxy::s_processingRequests;
It&apos;s good form to initialise this.


In all honesty all the ++ and --&apos;s make me wish we just had a struct to automatically increment and decrement this count.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203705</commentid>
    <comment_count>4</comment_count>
      <attachid>51566</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-03-24 17:50:29 -0700</bug_when>
    <thetext>Comment on attachment 51566
proposed fix

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203706</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-24 17:53:51 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/changeset/56474&gt;.

&gt;&gt; +unsigned NetscapePluginHostProxy::s_processingRequests;
&gt; It&apos;s good form to initialise this.

I&apos;m not sure about that - initializing with 0 just adds visual noise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204107</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-25 09:54:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/7786332&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51566</attachid>
            <date>2010-03-24 17:23:59 -0700</date>
            <delta_ts>2010-03-24 17:50:29 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>CrashInRecursivePluginCall.txt</filename>
            <type>text/plain</type>
            <size>12941</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA1NjQ3MCkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMzggQEAKKzIwMTAtMDMtMjQgIEFsZXhleSBQcm9za3VyeWFrb3Yg
IDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NTYzCisg
ICAgICAgIEEgcGx1Zy1pbiBtYWtlcyBTYWZhcmkgY3Jhc2ggb24gaHR0cDovL3d3dy5pdHNjb2Rp
bmd0aW1lLmNvbS8KKworICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSG9z
dFByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luSG9zdFByb3h5Ojpwb3J0
KTogQXNzZXJ0IHRoYXQgdGhlIG9iamVjdCBpcyBzdGlsbCBhbGl2ZS4gVGhpcyBpc24ndAorICAg
ICAgICBiZWF1dGlmdWxseSBzeXN0ZW1pYywgYnV0IGhlbHBlZCBmaW5kIGEgYnVnLgorICAgICAg
ICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbkhvc3RQcm94eTo6Y2xpZW50UG9ydCk6IERpdHRvLgor
ICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbkhvc3RQcm94eTo6aXNQcm9jZXNzaW5nUmVx
dWVzdHMpOiBDaGFuZ2VkIG1fcHJvY2Vzc2luZ1JlcXVlc3RzIHRvIGEKKyAgICAgICAgc3RhdGlj
LiBUaGlzIGRvZXNuJ3QgY2hhbmdlIGJlaGF2aW9yIG11Y2gsIGJ1dCBoZWxwcyBhdm9pZCB3cml0
aW5nIGludG8gZGVhbGxvY2F0ZWQgbWVtb3J5LgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQv
TmV0c2NhcGVQbHVnaW5Ib3N0UHJveHkubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1
Z2luSG9zdFByb3h5OjpOZXRzY2FwZVBsdWdpbkhvc3RQcm94eSk6IENoYW5nZWQgbV9wcm9jZXNz
aW5nUmVxdWVzdHMKKyAgICAgICAgdG8gYSBzdGF0aWMuCisgICAgICAgIChXZWJLaXQ6Ok5ldHNj
YXBlUGx1Z2luSG9zdFByb3h5Ojpwcm9jZXNzUmVxdWVzdHMpOiBEaXR0by4gQ2hhbmdpbmcgbV9w
cm9jZXNzaW5nUmVxdWVzdHMKKyAgICAgICAgYWZ0ZXIgZGVzdHJveWluZyB0aGUgb2JqZWN0IGlu
IHBsdWdpbkhvc3REaWVkKCkgd2FzIHdyb25nLCBidXQgcmVhc29uYWJseSBoYXJtbGVzcywgYXMg
dGhlcmUKKyAgICAgICAgd2Fzbid0IG11Y2ggdGltZSBmb3Igc29tZSBvdGhlciBvYmplY3QgdG8g
YmUgYWxsb2NhdGVkIGF0IHRoaXMgYWRkcmVzcy4KKyAgICAgICAgKFdLUENFdmFsdWF0ZSk6IFJl
ZmV0Y2ggaG9zdCBwcm94eSwgYXMgaXQgbWF5IGhhdmUgYmVlbiBkZXN0cm95ZWQuCisgICAgICAg
IChXS1BDSW52b2tlKTogRGl0dG8uCisgICAgICAgIChXS1BDSW52b2tlRGVmYXVsdCk6IERpdHRv
LgorICAgICAgICAoV0tQQ0dldFByb3BlcnR5KTogRGl0dG8uCisgICAgICAgIChXS1BDU2V0UHJv
cGVydHkpOiBEaXR0by4KKyAgICAgICAgKFdLUENSZW1vdmVQcm9wZXJ0eSk6IERpdHRvLgorICAg
ICAgICAoV0tQQ0hhc1Byb3BlcnR5KTogRGl0dG8uCisgICAgICAgIChXS1BDSGFzTWV0aG9kKTog
RGl0dG8uCisgICAgICAgIChXS1BDRW51bWVyYXRlKTogRGl0dG8uCisgICAgICAgIChXS1BDUnVu
U3luY09wZW5QYW5lbCk6IERpdHRvLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvTmV0c2Nh
cGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdp
bkluc3RhbmNlUHJveHk6OnByb2Nlc3NSZXF1ZXN0c0FuZFdhaXRGb3JSZXBseSk6IEJhaWwgb3V0
IG9mIHRoZSAKKyAgICAgICAgImV2ZW50IGxvb3AiIGlmIGhvc3QgcHJveHkgd2VudCBhd2F5IHdo
aWxlIHByb2Nlc3NpbmcgYSByZXF1ZXN0LgorCiAyMDEwLTAzLTI0ICBIYXlhdG8gSXRvICA8aGF5
YXRvQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaGluaWNoaXJvIEhhbWFq
aS4KSW5kZXg6IFdlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5Ib3N0UHJv
eHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1
Z2luSG9zdFByb3h5LmgJKHJldmlzaW9uIDU2NDYzKQorKysgV2ViS2l0L21hYy9QbHVnaW5zL0hv
c3RlZC9OZXRzY2FwZVBsdWdpbkhvc3RQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC00Myw4ICs0
Myw4IEBAIGNsYXNzIE5ldHNjYXBlUGx1Z2luSG9zdFByb3h5IHsKIHB1YmxpYzoKICAgICBOZXRz
Y2FwZVBsdWdpbkhvc3RQcm94eShtYWNoX3BvcnRfdCBjbGllbnRQb3J0LCBtYWNoX3BvcnRfdCBw
bHVnaW5Ib3N0UG9ydCwgY29uc3QgUHJvY2Vzc1NlcmlhbE51bWJlciYgcGx1Z2luSG9zdFBTTiwg
Ym9vbCBzaG91bGRDYWNoZU1pc3NpbmdQcm9wZXJ0aWVzQW5kTWV0aG9kcyk7CiAgICAgCi0gICAg
bWFjaF9wb3J0X3QgcG9ydCgpIGNvbnN0IHsgcmV0dXJuIG1fcGx1Z2luSG9zdFBvcnQ7IH0KLSAg
ICBtYWNoX3BvcnRfdCBjbGllbnRQb3J0KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnRQb3J0OyB9
CisgICAgbWFjaF9wb3J0X3QgcG9ydCgpIGNvbnN0IHsgQVNTRVJUKGZhc3RNYWxsb2NTaXplKHRo
aXMpKTsgcmV0dXJuIG1fcGx1Z2luSG9zdFBvcnQ7IH0KKyAgICBtYWNoX3BvcnRfdCBjbGllbnRQ
b3J0KCkgY29uc3QgeyBBU1NFUlQoZmFzdE1hbGxvY1NpemUodGhpcykpOyByZXR1cm4gbV9jbGll
bnRQb3J0OyB9CiAKICAgICB2b2lkIGFkZFBsdWdpbkluc3RhbmNlKE5ldHNjYXBlUGx1Z2luSW5z
dGFuY2VQcm94eSopOwogICAgIHZvaWQgcmVtb3ZlUGx1Z2luSW5zdGFuY2UoTmV0c2NhcGVQbHVn
aW5JbnN0YW5jZVByb3h5Kik7CkBAIC02Miw3ICs2Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFw
cGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCk7CiAgICAgCiAgICAgYm9vbCBwcm9jZXNzUmVxdWVz
dHMoKTsKLSAgICBib29sIGlzUHJvY2Vzc2luZ1JlcXVlc3RzKCkgY29uc3QgeyByZXR1cm4gbV9w
cm9jZXNzaW5nUmVxdWVzdHM7IH0KKyAgICBzdGF0aWMgYm9vbCBpc1Byb2Nlc3NpbmdSZXF1ZXN0
cygpIHsgcmV0dXJuIHNfcHJvY2Vzc2luZ1JlcXVlc3RzOyB9CiAgICAgCiAgICAgYm9vbCBzaG91
bGRDYWNoZU1pc3NpbmdQcm9wZXJ0aWVzQW5kTWV0aG9kcygpIGNvbnN0IHsgcmV0dXJuIG1fc2hv
dWxkQ2FjaGVNaXNzaW5nUHJvcGVydGllc0FuZE1ldGhvZHM7IH0KICAgICAKQEAgLTk5LDcgKzk5
LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZnVsbHNjcmVlbldpbmRvd0lzU2hvd2luZzsKICAg
ICBjb25zdCBQcm9jZXNzU2VyaWFsTnVtYmVyIG1fcGx1Z2luSG9zdFBTTjsKIAotICAgIHVuc2ln
bmVkIG1fcHJvY2Vzc2luZ1JlcXVlc3RzOworICAgIHN0YXRpYyB1bnNpZ25lZCBzX3Byb2Nlc3Np
bmdSZXF1ZXN0czsKIAogICAgIGJvb2wgbV9zaG91bGRDYWNoZU1pc3NpbmdQcm9wZXJ0aWVzQW5k
TWV0aG9kczsKIH07CkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1
Z2luSG9zdFByb3h5Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQv
TmV0c2NhcGVQbHVnaW5Ib3N0UHJveHkubW0JKHJldmlzaW9uIDU2NDYzKQorKysgV2ViS2l0L21h
Yy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkhvc3RQcm94eS5tbQkod29ya2luZyBjb3B5
KQpAQCAtODksNiArODksOCBAQCBzdGF0aWMgUGx1Z2luUHJveHlNYXAmIHBsdWdpblByb3h5TWFw
KCkKICAgICByZXR1cm4gcGx1Z2luUHJveHlNYXA7CiB9CiAKK3Vuc2lnbmVkIE5ldHNjYXBlUGx1
Z2luSG9zdFByb3h5OjpzX3Byb2Nlc3NpbmdSZXF1ZXN0czsKKwogTmV0c2NhcGVQbHVnaW5Ib3N0
UHJveHk6Ok5ldHNjYXBlUGx1Z2luSG9zdFByb3h5KG1hY2hfcG9ydF90IGNsaWVudFBvcnQsIG1h
Y2hfcG9ydF90IHBsdWdpbkhvc3RQb3J0LCBjb25zdCBQcm9jZXNzU2VyaWFsTnVtYmVyJiBwbHVn
aW5Ib3N0UFNOLCBib29sIHNob3VsZENhY2hlTWlzc2luZ1Byb3BlcnRpZXNBbmRNZXRob2RzKQog
ICAgIDogbV9jbGllbnRQb3J0KGNsaWVudFBvcnQpCiAgICAgLCBtX3BvcnRTZXQoTUFDSF9QT1JU
X05VTEwpCkBAIC05Nyw3ICs5OSw2IEBAIE5ldHNjYXBlUGx1Z2luSG9zdFByb3h5OjpOZXRzY2Fw
ZVBsdWdpbkgKICAgICAsIG1fbWVudUJhcklzVmlzaWJsZSh0cnVlKQogICAgICwgbV9mdWxsc2Ny
ZWVuV2luZG93SXNTaG93aW5nKGZhbHNlKQogICAgICwgbV9wbHVnaW5Ib3N0UFNOKHBsdWdpbkhv
c3RQU04pCi0gICAgLCBtX3Byb2Nlc3NpbmdSZXF1ZXN0cygwKQogICAgICwgbV9zaG91bGRDYWNo
ZU1pc3NpbmdQcm9wZXJ0aWVzQW5kTWV0aG9kcyhzaG91bGRDYWNoZU1pc3NpbmdQcm9wZXJ0aWVz
QW5kTWV0aG9kcykKIHsKICAgICBwbHVnaW5Qcm94eU1hcCgpLmFkZChtX2NsaWVudFBvcnQsIHRo
aXMpOwpAQCAtMTg0LDcgKzE4NSw5IEBAIHZvaWQgTmV0c2NhcGVQbHVnaW5Ib3N0UHJveHk6OnJl
bW92ZVBsdWcKIAogTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5KiBOZXRzY2FwZVBsdWdpbkhv
c3RQcm94eTo6cGx1Z2luSW5zdGFuY2UodWludDMyX3QgcGx1Z2luSUQpCiB7Ci0gICAgcmV0dXJu
IG1faW5zdGFuY2VzLmdldChwbHVnaW5JRCkuZ2V0KCk7CisgICAgTmV0c2NhcGVQbHVnaW5JbnN0
YW5jZVByb3h5KiByZXN1bHQgPSBtX2luc3RhbmNlcy5nZXQocGx1Z2luSUQpLmdldCgpOworICAg
IEFTU0VSVCghcmVzdWx0IHx8IHJlc3VsdC0+aG9zdFByb3h5KCkgPT0gdGhpcyk7CisgICAgcmV0
dXJuIHJlc3VsdDsKIH0KIAogdm9pZCBOZXRzY2FwZVBsdWdpbkhvc3RQcm94eTo6ZGVhZE5hbWVO
b3RpZmljYXRpb25DYWxsYmFjayhDRk1hY2hQb3J0UmVmIHBvcnQsIHZvaWQgKm1zZywgQ0ZJbmRl
eCBzaXplLCB2b2lkICppbmZvKQpAQCAtMjk0LDcgKzI5Nyw3IEBAIHZvaWQgTmV0c2NhcGVQbHVn
aW5Ib3N0UHJveHk6OnNldE1vZGFsKGIKICAgICAKIGJvb2wgTmV0c2NhcGVQbHVnaW5Ib3N0UHJv
eHk6OnByb2Nlc3NSZXF1ZXN0cygpCiB7Ci0gICAgbV9wcm9jZXNzaW5nUmVxdWVzdHMrKzsKKyAg
ICBzX3Byb2Nlc3NpbmdSZXF1ZXN0cysrOwogCiAgICBpZiAoIW1fcG9ydFNldCkgewogICAgICAg
ICBtYWNoX3BvcnRfYWxsb2NhdGUobWFjaF90YXNrX3NlbGYoKSwgTUFDSF9QT1JUX1JJR0hUX1BP
UlRfU0VULCAmbV9wb3J0U2V0KTsKQEAgLTMxMCw3ICszMTMsNyBAQCBib29sIE5ldHNjYXBlUGx1
Z2luSG9zdFByb3h5Ojpwcm9jZXNzUmVxCiAgICAgCiAgICAgaWYgKGtyICE9IEtFUk5fU1VDQ0VT
UykgewogICAgICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCByZWNlaXZlIG1hY2ggbWVzc2FnZSwg
ZXJyb3IgJXgiLCBrcik7Ci0gICAgICAgIG1fcHJvY2Vzc2luZ1JlcXVlc3RzLS07CisgICAgICAg
IHNfcHJvY2Vzc2luZ1JlcXVlc3RzLS07CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAg
ICAgCkBAIC0zMjMsMjQgKzMyNiwyNCBAQCBib29sIE5ldHNjYXBlUGx1Z2luSG9zdFByb3h5Ojpw
cm9jZXNzUmVxCiAgICAgICAgICAgICAKICAgICAgICAgICAgIGlmIChrciAhPSBLRVJOX1NVQ0NF
U1MpIHsKICAgICAgICAgICAgICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCBzZW5kIG1hY2ggbWVz
c2FnZSwgZXJyb3IgJXgiLCBrcik7Ci0gICAgICAgICAgICAgICAgbV9wcm9jZXNzaW5nUmVxdWVz
dHMtLTsKKyAgICAgICAgICAgICAgICBzX3Byb2Nlc3NpbmdSZXF1ZXN0cy0tOwogICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICAK
LSAgICAgICAgbV9wcm9jZXNzaW5nUmVxdWVzdHMtLTsKKyAgICAgICAgc19wcm9jZXNzaW5nUmVx
dWVzdHMtLTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIAogICAgIGlmIChtc2ct
Pm1zZ2hfbG9jYWxfcG9ydCA9PSBDRk1hY2hQb3J0R2V0UG9ydChtX2RlYWROYW1lTm90aWZpY2F0
aW9uUG9ydC5nZXQoKSkpIHsKICAgICAgICAgQVNTRVJUKG1zZy0+bXNnaF9pZCA9PSBNQUNIX05P
VElGWV9ERUFEX05BTUUpOwogICAgICAgICBwbHVnaW5Ib3N0RGllZCgpOwotICAgICAgICBtX3By
b2Nlc3NpbmdSZXF1ZXN0cy0tOworICAgICAgICBzX3Byb2Nlc3NpbmdSZXF1ZXN0cy0tOwogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwotICAgIG1fcHJvY2Vzc2luZ1JlcXVlc3RzLS07CisgICAgc19wcm9jZXNzaW5nUmVxdWVzdHMt
LTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTU3OCw3ICs1ODEsMTEgQEAga2Vybl9yZXR1
cm5fdCBXS1BDRXZhbHVhdGUobWFjaF9wb3J0X3QgYwogICAgIGRhdGFfdCByZXN1bHREYXRhID0g
MDsKICAgICBtYWNoX21zZ190eXBlX251bWJlcl90IHJlc3VsdExlbmd0aCA9IDA7CiAgICAgYm9v
bGVhbl90IHJldHVyblZhbHVlID0gaW5zdGFuY2VQcm94eS0+ZXZhbHVhdGUob2JqZWN0SUQsIHNj
cmlwdCwgcmVzdWx0RGF0YSwgcmVzdWx0TGVuZ3RoLCBhbGxvd1BvcHVwcyk7Ci0gICAgCisKKyAg
ICBob3N0UHJveHkgPSBpbnN0YW5jZVByb3h5LT5ob3N0UHJveHkoKTsKKyAgICBpZiAoIWhvc3RQ
cm94eSkKKyAgICAgICAgcmV0dXJuIEtFUk5fRkFJTFVSRTsKKwogICAgIF9XS1BIQm9vbGVhbkFu
ZERhdGFSZXBseShob3N0UHJveHktPnBvcnQoKSwgaW5zdGFuY2VQcm94eS0+cGx1Z2luSUQoKSwg
cmVxdWVzdElELCByZXR1cm5WYWx1ZSwgcmVzdWx0RGF0YSwgcmVzdWx0TGVuZ3RoKTsKICAgICBp
ZiAocmVzdWx0RGF0YSkKICAgICAgICAgbWlnX2RlYWxsb2NhdGUocmVpbnRlcnByZXRfY2FzdDx2
bV9hZGRyZXNzX3Q+KHJlc3VsdERhdGEpLCByZXN1bHRMZW5ndGgpOwpAQCAtNjM3LDcgKzY0NCwx
MSBAQCBrZXJuX3JldHVybl90IFdLUENJbnZva2UobWFjaF9wb3J0X3QgY2xpCiAgICAgZGF0YV90
IHJlc3VsdERhdGEgPSAwOwogICAgIG1hY2hfbXNnX3R5cGVfbnVtYmVyX3QgcmVzdWx0TGVuZ3Ro
ID0gMDsKICAgICBib29sZWFuX3QgcmV0dXJuVmFsdWUgPSBpbnN0YW5jZVByb3h5LT5pbnZva2Uo
b2JqZWN0SUQsIG1ldGhvZE5hbWVJZGVudGlmaWVyLCBhcmd1bWVudHNEYXRhLCBhcmd1bWVudHNM
ZW5ndGgsIHJlc3VsdERhdGEsIHJlc3VsdExlbmd0aCk7Ci0gICAgCisKKyAgICBob3N0UHJveHkg
PSBpbnN0YW5jZVByb3h5LT5ob3N0UHJveHkoKTsKKyAgICBpZiAoIWhvc3RQcm94eSkKKyAgICAg
ICAgcmV0dXJuIEtFUk5fRkFJTFVSRTsKKwogICAgIF9XS1BIQm9vbGVhbkFuZERhdGFSZXBseSho
b3N0UHJveHktPnBvcnQoKSwgaW5zdGFuY2VQcm94eS0+cGx1Z2luSUQoKSwgcmVxdWVzdElELCBy
ZXR1cm5WYWx1ZSwgcmVzdWx0RGF0YSwgcmVzdWx0TGVuZ3RoKTsKICAgICBpZiAocmVzdWx0RGF0
YSkKICAgICAgICAgbWlnX2RlYWxsb2NhdGUocmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+
KHJlc3VsdERhdGEpLCByZXN1bHRMZW5ndGgpOwpAQCAtNjYzLDcgKzY3NCwxMSBAQCBrZXJuX3Jl
dHVybl90IFdLUENJbnZva2VEZWZhdWx0KG1hY2hfcG9yCiAgICAgZGF0YV90IHJlc3VsdERhdGEg
PSAwOwogICAgIG1hY2hfbXNnX3R5cGVfbnVtYmVyX3QgcmVzdWx0TGVuZ3RoID0gMDsKICAgICBi
b29sZWFuX3QgcmV0dXJuVmFsdWUgPSBpbnN0YW5jZVByb3h5LT5pbnZva2VEZWZhdWx0KG9iamVj
dElELCBhcmd1bWVudHNEYXRhLCBhcmd1bWVudHNMZW5ndGgsIHJlc3VsdERhdGEsIHJlc3VsdExl
bmd0aCk7Ci0gICAgCisKKyAgICBob3N0UHJveHkgPSBpbnN0YW5jZVByb3h5LT5ob3N0UHJveHko
KTsKKyAgICBpZiAoIWhvc3RQcm94eSkKKyAgICAgICAgcmV0dXJuIEtFUk5fRkFJTFVSRTsKKwog
ICAgIF9XS1BIQm9vbGVhbkFuZERhdGFSZXBseShob3N0UHJveHktPnBvcnQoKSwgaW5zdGFuY2VQ
cm94eS0+cGx1Z2luSUQoKSwgcmVxdWVzdElELCByZXR1cm5WYWx1ZSwgcmVzdWx0RGF0YSwgcmVz
dWx0TGVuZ3RoKTsKICAgICBpZiAocmVzdWx0RGF0YSkKICAgICAgICAgbWlnX2RlYWxsb2NhdGUo
cmVpbnRlcnByZXRfY2FzdDx2bV9hZGRyZXNzX3Q+KHJlc3VsdERhdGEpLCByZXN1bHRMZW5ndGgp
OwpAQCAtNzAxLDcgKzcxNiw3IEBAIGtlcm5fcmV0dXJuX3QgV0tQQ0dldFByb3BlcnR5KG1hY2hf
cG9ydF8KICAgICBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkqIGluc3RhbmNlUHJveHkgPSBo
b3N0UHJveHktPnBsdWdpbkluc3RhbmNlKHBsdWdpbklEKTsKICAgICBpZiAoIWluc3RhbmNlUHJv
eHkpCiAgICAgICAgIHJldHVybiBLRVJOX0ZBSUxVUkU7Ci0gICAgCisKICAgICBJZGVudGlmaWVy
UmVwKiBpZGVudGlmaWVyID0gcmVpbnRlcnByZXRfY2FzdDxJZGVudGlmaWVyUmVwKj4oc2VydmVy
SWRlbnRpZmllcik7CiAgICAgaWYgKCFJZGVudGlmaWVyUmVwOjppc1ZhbGlkKGlkZW50aWZpZXIp
KQogICAgICAgICByZXR1cm4gS0VSTl9GQUlMVVJFOwpAQCAtNzE3LDcgKzczMiwxMSBAQCBrZXJu
X3JldHVybl90IFdLUENHZXRQcm9wZXJ0eShtYWNoX3BvcnRfCiAgICAgICAgIHJldHVyblZhbHVl
ID0gaW5zdGFuY2VQcm94eS0+Z2V0UHJvcGVydHkob2JqZWN0SUQsIHByb3BlcnR5TmFtZUlkZW50
aWZpZXIsIHJlc3VsdERhdGEsIHJlc3VsdExlbmd0aCk7CiAgICAgfSBlbHNlIAogICAgICAgICBy
ZXR1cm5WYWx1ZSA9IGluc3RhbmNlUHJveHktPnNldFByb3BlcnR5KG9iamVjdElELCBpZGVudGlm
aWVyLT5udW1iZXIoKSwgcmVzdWx0RGF0YSwgcmVzdWx0TGVuZ3RoKTsKLSAgICAKKworICAgIGhv
c3RQcm94eSA9IGluc3RhbmNlUHJveHktPmhvc3RQcm94eSgpOworICAgIGlmICghaG9zdFByb3h5
KQorICAgICAgICByZXR1cm4gS0VSTl9GQUlMVVJFOworCiAgICAgX1dLUEhCb29sZWFuQW5kRGF0
YVJlcGx5KGhvc3RQcm94eS0+cG9ydCgpLCBpbnN0YW5jZVByb3h5LT5wbHVnaW5JRCgpLCByZXF1
ZXN0SUQsIHJldHVyblZhbHVlLCByZXN1bHREYXRhLCByZXN1bHRMZW5ndGgpOwogICAgIGlmIChy
ZXN1bHREYXRhKQogICAgICAgICBtaWdfZGVhbGxvY2F0ZShyZWludGVycHJldF9jYXN0PHZtX2Fk
ZHJlc3NfdD4ocmVzdWx0RGF0YSksIHJlc3VsdExlbmd0aCk7CkBAIC03NTAsNiArNzY5LDEwIEBA
IGtlcm5fcmV0dXJuX3QgV0tQQ1NldFByb3BlcnR5KG1hY2hfcG9ydF8KICAgICB9IGVsc2UgCiAg
ICAgICAgIHJlc3VsdCA9IGluc3RhbmNlUHJveHktPnNldFByb3BlcnR5KG9iamVjdElELCBpZGVu
dGlmaWVyLT5udW1iZXIoKSwgdmFsdWVEYXRhLCB2YWx1ZUxlbmd0aCk7CiAKKyAgICBob3N0UHJv
eHkgPSBpbnN0YW5jZVByb3h5LT5ob3N0UHJveHkoKTsKKyAgICBpZiAoIWhvc3RQcm94eSkKKyAg
ICAgICAgcmV0dXJuIEtFUk5fRkFJTFVSRTsKKwogICAgIF9XS1BIQm9vbGVhblJlcGx5KGhvc3RQ
cm94eS0+cG9ydCgpLCBpbnN0YW5jZVByb3h5LT5wbHVnaW5JRCgpLCByZXF1ZXN0SUQsIHJlc3Vs
dCk7CiAKICAgICByZXR1cm4gS0VSTl9TVUNDRVNTOwpAQCAtNzc4LDYgKzgwMSwxMCBAQCBrZXJu
X3JldHVybl90IFdLUENSZW1vdmVQcm9wZXJ0eShtYWNoX3BvCiAgICAgfSBlbHNlIAogICAgICAg
ICByZXN1bHQgPSBpbnN0YW5jZVByb3h5LT5yZW1vdmVQcm9wZXJ0eShvYmplY3RJRCwgaWRlbnRp
Zmllci0+bnVtYmVyKCkpOwogCisgICAgaG9zdFByb3h5ID0gaW5zdGFuY2VQcm94eS0+aG9zdFBy
b3h5KCk7CisgICAgaWYgKCFob3N0UHJveHkpCisgICAgICAgIHJldHVybiBLRVJOX0ZBSUxVUkU7
CisKICAgICBfV0tQSEJvb2xlYW5SZXBseShob3N0UHJveHktPnBvcnQoKSwgaW5zdGFuY2VQcm94
eS0+cGx1Z2luSUQoKSwgcmVxdWVzdElELCByZXN1bHQpOwogCiAgICAgcmV0dXJuIEtFUk5fU1VD
Q0VTUzsKQEAgLTgwNSw3ICs4MzIsMTEgQEAga2Vybl9yZXR1cm5fdCBXS1BDSGFzUHJvcGVydHko
bWFjaF9wb3J0XwogICAgICAgICByZXR1cm5WYWx1ZSA9IGluc3RhbmNlUHJveHktPmhhc1Byb3Bl
cnR5KG9iamVjdElELCBwcm9wZXJ0eU5hbWVJZGVudGlmaWVyKTsKICAgICB9IGVsc2UgCiAgICAg
ICAgIHJldHVyblZhbHVlID0gaW5zdGFuY2VQcm94eS0+aGFzUHJvcGVydHkob2JqZWN0SUQsIGlk
ZW50aWZpZXItPm51bWJlcigpKTsKLSAgICAKKworICAgIGhvc3RQcm94eSA9IGluc3RhbmNlUHJv
eHktPmhvc3RQcm94eSgpOworICAgIGlmICghaG9zdFByb3h5KQorICAgICAgICByZXR1cm4gS0VS
Tl9GQUlMVVJFOworCiAgICAgX1dLUEhCb29sZWFuUmVwbHkoaG9zdFByb3h5LT5wb3J0KCksIGlu
c3RhbmNlUHJveHktPnBsdWdpbklEKCksIHJlcXVlc3RJRCwgcmV0dXJuVmFsdWUpOwogICAgIAog
ICAgIHJldHVybiBLRVJOX1NVQ0NFU1M7CkBAIC04MzAsNiArODYxLDEwIEBAIGtlcm5fcmV0dXJu
X3QgV0tQQ0hhc01ldGhvZChtYWNoX3BvcnRfdCAKICAgICBJZGVudGlmaWVyIG1ldGhvZE5hbWVJ
ZGVudGlmaWVyID0gaWRlbnRpZmllckZyb21JZGVudGlmaWVyUmVwKGlkZW50aWZpZXIpOyAgICAg
ICAgCiAgICAgYm9vbGVhbl90IHJldHVyblZhbHVlID0gaW5zdGFuY2VQcm94eS0+aGFzTWV0aG9k
KG9iamVjdElELCBtZXRob2ROYW1lSWRlbnRpZmllcik7CiAKKyAgICBob3N0UHJveHkgPSBpbnN0
YW5jZVByb3h5LT5ob3N0UHJveHkoKTsKKyAgICBpZiAoIWhvc3RQcm94eSkKKyAgICAgICAgcmV0
dXJuIEtFUk5fRkFJTFVSRTsKKwogICAgIF9XS1BIQm9vbGVhblJlcGx5KGhvc3RQcm94eS0+cG9y
dCgpLCBpbnN0YW5jZVByb3h5LT5wbHVnaW5JRCgpLCByZXF1ZXN0SUQsIHJldHVyblZhbHVlKTsK
IAogICAgIHJldHVybiBLRVJOX1NVQ0NFU1M7CkBAIC04NzIsNyArOTA3LDExIEBAIGtlcm5fcmV0
dXJuX3QgV0tQQ0VudW1lcmF0ZShtYWNoX3BvcnRfdCAKICAgICBkYXRhX3QgcmVzdWx0RGF0YSA9
IDA7CiAgICAgbWFjaF9tc2dfdHlwZV9udW1iZXJfdCByZXN1bHRMZW5ndGggPSAwOwogICAgIGJv
b2xlYW5fdCByZXR1cm5WYWx1ZSA9IGluc3RhbmNlUHJveHktPmVudW1lcmF0ZShvYmplY3RJRCwg
cmVzdWx0RGF0YSwgcmVzdWx0TGVuZ3RoKTsKLSAgICAKKworICAgIGhvc3RQcm94eSA9IGluc3Rh
bmNlUHJveHktPmhvc3RQcm94eSgpOworICAgIGlmICghaG9zdFByb3h5KQorICAgICAgICByZXR1
cm4gS0VSTl9GQUlMVVJFOworCiAgICAgX1dLUEhCb29sZWFuQW5kRGF0YVJlcGx5KGhvc3RQcm94
eS0+cG9ydCgpLCBpbnN0YW5jZVByb3h5LT5wbHVnaW5JRCgpLCByZXF1ZXN0SUQsIHJldHVyblZh
bHVlLCByZXN1bHREYXRhLCByZXN1bHRMZW5ndGgpOwogICAgIAogICAgIGlmIChyZXN1bHREYXRh
KQpAQCAtMTExNCw3ICsxMTUzLDExIEBAIGtlcm5fcmV0dXJuX3QgV0tQQ1J1blN5bmNPcGVuUGFu
ZWwobWFjaF8KICAgICBbc2hlZXQgc2V0UmVxdWlyZWRGaWxlVHlwZTpbcGFuZWxTdGF0ZSBvYmpl
Y3RGb3JLZXk6QCJyZXF1aXJlZEZpbGVUeXBlIl1dOyAgICAKICAgICBbc2hlZXQgc2V0VGl0bGU6
W3BhbmVsU3RhdGUgb2JqZWN0Rm9yS2V5OkAidGl0bGUiXV07CiAgICAgW3NoZWV0IHJ1bk1vZGFs
XTsKLSAgICAKKworICAgIGhvc3RQcm94eSA9IGluc3RhbmNlUHJveHktPmhvc3RQcm94eSgpOwor
ICAgIGlmICghaG9zdFByb3h5KQorICAgICAgICByZXR1cm4gS0VSTl9GQUlMVVJFOworCiAgICAg
TlNEaWN0aW9uYXJ5ICpyZXQgPSBbTlNEaWN0aW9uYXJ5IGRpY3Rpb25hcnlXaXRoT2JqZWN0c0Fu
ZEtleXM6CiAgICAgICAgICAgICAgICAgICAgICAgICAgW3NoZWV0IGZpbGVuYW1lc10sIEAiZmls
ZW5hbWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBXS05vdGVPcGVuUGFuZWxGaWxlcyhb
c2hlZXQgZmlsZW5hbWVzXSksIEAiZXh0ZW5zaW9ucyIsCkluZGV4OiBXZWJLaXQvbWFjL1BsdWdp
bnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQko
cmV2aXNpb24gNTY0NjMpCisrKyBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1
Z2luSW5zdGFuY2VQcm94eS5tbQkod29ya2luZyBjb3B5KQpAQCAtNzc3LDEwICs3NzcsMTYgQEAg
TlBFcnJvciBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmxvYQogTmV0c2NhcGVQbHVnaW5J
bnN0YW5jZVByb3h5OjpSZXBseSogTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Ojpwcm9jZXNz
UmVxdWVzdHNBbmRXYWl0Rm9yUmVwbHkodWludDMyX3QgcmVxdWVzdElEKQogewogICAgIFJlcGx5
KiByZXBseSA9IDA7Ci0gICAgCisKKyAgICBBU1NFUlQobV9wbHVnaW5Ib3N0UHJveHkpOwogICAg
IHdoaWxlICghKHJlcGx5ID0gbV9yZXBsaWVzLnRha2UocmVxdWVzdElEKSkpIHsKICAgICAgICAg
aWYgKCFtX3BsdWdpbkhvc3RQcm94eS0+cHJvY2Vzc1JlcXVlc3RzKCkpCiAgICAgICAgICAgICBy
ZXR1cm4gMDsKKworICAgICAgICAvLyBUaGUgaG9zdCBwcm94eSBjYW4gYmUgZGVzdHJveWVkIHdo
aWxlIGV4ZWN1dGluZyBhIG5lc3RlZCBwcm9jZXNzUmVxdWVzdHMoKSBjYWxsLCBpbiB3aGljaCBj
YXNlIGl0J3Mgbm9ybWFsCisgICAgICAgIC8vIHRvIGdldCBhIHN1Y2Nlc3MgcmVzdWx0LCBidXQg
YmUgdW5hYmxlIHRvIGtlZXAgbG9vcGluZy4KKyAgICAgICAgaWYgKCFtX3BsdWdpbkhvc3RQcm94
eSkKKyAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KICAgICAKICAgICBBU1NFUlQocmVwbHkp
Owo=
</data>
<flag name="review"
          id="34835"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>