<?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>141330</bug_id>
          
          <creation_ts>2015-02-06 05:28:07 -0800</creation_ts>
          <short_desc>[GTK] Remove WebKitWebView::close-notification signal</short_desc>
          <delta_ts>2015-02-06 06:50:34 -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>WebKitGTK</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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1067342</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-02-06 05:28:07 -0800</bug_when>
    <thetext>In favor of a WebKitNotification::closed signal. There are two main reasons for this:

 1.- We are running out of padding space in WebKitWebViewClass
 2.- Applications should be able to close notifications too. Right now, in the default implementation when the user closes a notification, the web view is not notified, so the notification remains alive and onclose handler is not dispatched either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067346</commentid>
    <comment_count>1</comment_count>
      <attachid>246162</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-02-06 05:42:07 -0800</bug_when>
    <thetext>Created attachment 246162
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067347</commentid>
    <comment_count>2</comment_count>
      <attachid>246162</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2015-02-06 05:58:11 -0800</bug_when>
    <thetext>Comment on attachment 246162
Patch

So back to having the close signal on the notification and fixing a DOM notification that was not being emitted - I wonder if there are tests that we can unskip for that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067349</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-02-06 06:13:55 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 246162 [details]
&gt; Patch
&gt; 
&gt; So back to having the close signal on the notification and fixing a DOM
&gt; notification that was not being emitted - I wonder if there are tests that
&gt; we can unskip for that?

This only affects the GTK+ API, not the C API used by WTR, so I don&apos;t think this can fix any test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067353</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-02-06 06:50:34 -0800</bug_when>
    <thetext>Committed r179745: &lt;http://trac.webkit.org/changeset/179745&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246162</attachid>
            <date>2015-02-06 05:42:07 -0800</date>
            <delta_ts>2015-02-06 05:58:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-notification-closed.diff</filename>
            <type>text/plain</type>
            <size>23687</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA1ZWI3OGJmLi44MTY4OWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDQg
QEAKKzIwMTUtMDItMDYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFJlbW92ZSBXZWJLaXRXZWJWaWV3OjpjbG9zZS1ub3RpZmljYXRp
b24gc2lnbmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDEzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJbiBmYXZvciBvZiBhIFdlYktpdE5vdGlmaWNhdGlvbjo6Y2xvc2VkIHNpZ25hbCBhbmQKKyAg
ICAgICAgd2Via2l0X25vdGlmaWNhdGlvbl9jbG9zZSgpIG1ldGhvZCB0aGF0IGJvdGggYXBwbGlj
YXRpb25zIGFuZAorICAgICAgICBXZWJLaXQgY2FuIHVzZSB0byBjbG9zZSBhIG5vdGlmaWNhdGlv
bi4gVGhpcyBhbHNvIGZpeGVzIHRoZQorICAgICAgICBvbmNsb3NlIGV2ZW50IHRoYXQgd2FzIG5v
dCBmaXJlZCB3aGVuIHRoZSBub3RpZmljYXRpb24gd2FzCisgICAgICAgIGNsb3NlZC4gSXQgYWxz
byBicmluZ3MgYmFjayBwYWRkaW5nIHNwYWNlIGluIFdlYktpdFdlYlZpZXdDbGFzcy4KKworICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdE5vdGlmaWNhdGlvbi5jcHA6CisgICAgICAg
ICh3ZWJraXRfbm90aWZpY2F0aW9uX2NsYXNzX2luaXQpOiBBZGQgV2ViS2l0Tm90aWZpY2F0aW9u
OjpjbG9zZWQgc2lnbmFsLgorICAgICAgICAod2Via2l0X25vdGlmaWNhdGlvbl9jbG9zZSk6IEVt
aXQgV2ViS2l0Tm90aWZpY2F0aW9uOjpjbG9zZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0Tm90aWZpY2F0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2Vi
S2l0Tm90aWZpY2F0aW9uUHJvdmlkZXIuY3BwOgorICAgICAgICAoV2ViS2l0Tm90aWZpY2F0aW9u
UHJvdmlkZXI6Om5vdGlmaWNhdGlvbkNsb3NlQ2FsbGJhY2spOiBDYWxsYmFjaworICAgICAgICBm
b3IgV2ViS2l0Tm90aWZpY2F0aW9uOjpjbG9zZWQgc2lnbmFsIHRoYXQgbm90aWZpZXMgdGhlIFdl
YlByb2Nlc3MKKyAgICAgICAgYW5kIHJlbW92ZXMgdGhlIG5vdGlmaWNhdGlvbiBmcm9tIHRoZSBt
YXAuCisgICAgICAgIChXZWJLaXROb3RpZmljYXRpb25Qcm92aWRlcjo6c2hvdyk6IENvbm5lY3Qg
dG8gV2ViS2l0Tm90aWZpY2F0aW9uOjpjbG9zZWQuCisgICAgICAgIChXZWJLaXROb3RpZmljYXRp
b25Qcm92aWRlcjo6Y2FuY2VsTm90aWZpY2F0aW9uQnlJRCk6IENhbGwgd2Via2l0X25vdGlmaWNh
dGlvbl9jbG9zZSgpLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdE5vdGlmaWNh
dGlvblByb3ZpZGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmll
dy5jcHA6CisgICAgICAgIChub3RpZnlOb3RpZmljYXRpb25DbG9zZWQpOiBUaGUgdXNlciBjbG9z
ZWQgdGhlIGFubm90YXRpb24sIGNhbGwKKyAgICAgICAgd2Via2l0X25vdGlmaWNhdGlvbl9jbG9z
ZSgpLgorICAgICAgICAod2ViTm90aWZpY2F0aW9uQ2xvc2VkKTogVGhlIFdlYktpdE5vdGlmaWNh
dGlvbiBoYXMgYmVlbiBjbG9zZWQsCisgICAgICAgIGNsb3NlIHRoZSBsaWJub3RpZnkgbm90aWZp
Y2F0aW9uIGlmIGl0IGhhc24ndCBiZWVuIGNsb3NlZCB5ZXQuCisgICAgICAgICh3ZWJraXRXZWJW
aWV3U2hvd05vdGlmaWNhdGlvbik6IENyZWF0ZSB0aGUgbGlibm90aWZpeQorICAgICAgICBub3Rp
ZmljYXRpb24gaWYgbmVlZGVkIGFuZCBhc3NvY2lhdGUgaXQgdG8gdGhlIFdlYktpdE5vdGlmaWNh
dGlvbgorICAgICAgICBhcyB1c2VyIGRhdGEuIENvbm5lY3QgdG8gdGhlIGNsb3NlZCBzaWduYWwg
b2YgYm90aCwgdGhlIGxpYm5vdGlmaXkKKyAgICAgICAgbm90aWZpY2F0aW9uIGFuZCB0aGUgV2Vi
S2l0IG5vdGlmaWNhdGlvbi4KKyAgICAgICAgKHdlYmtpdFdlYlZpZXdDbG9zZU5vdGlmaWNhdGlv
bik6IERlbGV0ZWQuCisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdCk6IFJlbW92
ZSBjbG9zZS1ub3RpZmljYXRpb24gc2lnbmFsIGFuZAorICAgICAgICB0aGUgZGVmYXVsdCBoYW5s
ZGVyLgorICAgICAgICAod2Via2l0V2ViVmlld0VtaXRDbG9zZU5vdGlmaWNhdGlvbik6IERlbGV0
ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdQcml2YXRlLmg6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9ndGsvZG9jcy93ZWJraXQyZ3RrLTQuMC1zZWN0aW9ucy50eHQ6IEFkZCB3
ZWJraXRfbm90aWZpY2F0aW9uX2Nsb3NlLgorCiAyMDE1LTAyLTA1ICBZb3Vlbm4gRmFibGV0ICA8
eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+IGFuZCBYYWJpZXIgUm9kcmlndWV6IENhbHZhciA8
Y2FsdmFyaXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU3RyZWFtcyBBUEldIEltcGxlbWVudCBh
IGJhcmVib25lIFJlYWRhYmxlU3RyZWFtIGludGVyZmFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Tm90aWZpY2F0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdE5vdGlmaWNhdGlvbi5jcHAKaW5kZXggNzli
YTJiNS4uYWY3NzZlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0Tm90aWZpY2F0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL2d0ay9XZWJLaXROb3RpZmljYXRpb24uY3BwCkBAIC00Miw2ICs0MiwxMiBAQCBlbnVtIHsK
ICAgICBQUk9QX0JPRFkKIH07CiAKK2VudW0geworICAgIENMT1NFRCwKKworICAgIExBU1RfU0lH
TkFMCit9OworCiBzdHJ1Y3QgX1dlYktpdE5vdGlmaWNhdGlvblByaXZhdGUgewogICAgIENTdHJp
bmcgdGl0bGU7CiAgICAgQ1N0cmluZyBib2R5OwpAQCAtNTAsNiArNTYsOCBAQCBzdHJ1Y3QgX1dl
YktpdE5vdGlmaWNhdGlvblByaXZhdGUgewogICAgIFdlYktpdFdlYlZpZXcqIHdlYlZpZXc7CiB9
OwogCitzdGF0aWMgZ3VpbnQgc2lnbmFsc1tMQVNUX1NJR05BTF0gPSB7IDAsIH07CisKIFdFQktJ
VF9ERUZJTkVfVFlQRShXZWJLaXROb3RpZmljYXRpb24sIHdlYmtpdF9ub3RpZmljYXRpb24sIEdf
VFlQRV9PQkpFQ1QpCiAKIHN0YXRpYyB2b2lkIHdlYmtpdE5vdGlmaWNhdGlvbkdldFByb3BlcnR5
KEdPYmplY3QqIG9iamVjdCwgZ3VpbnQgcHJvcElkLCBHVmFsdWUqIHZhbHVlLCBHUGFyYW1TcGVj
KiBwYXJhbVNwZWMpCkBAIC0xMjAsNiArMTI4LDI3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9ub3Rp
ZmljYXRpb25fY2xhc3NfaW5pdChXZWJLaXROb3RpZmljYXRpb25DbGFzcyogbm90aWZpY2F0aW9u
CiAgICAgICAgICAgICBfKCJUaGUgYm9keSBmb3IgdGhlIG5vdGlmaWNhdGlvbiIpLAogICAgICAg
ICAgICAgbnVsbHB0ciwKICAgICAgICAgICAgIFdFQktJVF9QQVJBTV9SRUFEQUJMRSkpOworCisg
ICAgLyoqCisgICAgICogV2ViS2l0Tm90aWZpY2F0aW9uOjpjbG9zZWQ6CisgICAgICogQG5vdGlm
aWNhdGlvbjogdGhlICNXZWJLaXROb3RpZmljYXRpb24gb24gd2hpY2ggdGhlIHNpZ25hbCBpcyBl
bWl0dGVkCisgICAgICoKKyAgICAgKiBFbWl0dGVkIHdoZW4gYSBub3RpZmljYXRpb24gaGFzIGJl
ZW4gd2l0aGRyYXduLgorICAgICAqCisgICAgICogVGhlIGRlZmF1bHQgaGFuZGxlciB3aWxsIGNs
b3NlIHRoZSBub3RpZmljYXRpb24gdXNpbmcgbGlibm90aWZ5LCBpZiBidWlsdCB3aXRoCisgICAg
ICogc3VwcG9ydCBmb3IgaXQuCisgICAgICoKKyAgICAgKiBTaW5jZTogMi44CisgICAgICovCisg
ICAgc2lnbmFsc1tDTE9TRURdID0KKyAgICAgICAgZ19zaWduYWxfbmV3KAorICAgICAgICAgICAg
ImNsb3NlZCIsCisgICAgICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhub3RpZmljYXRpb25DbGFz
cyksCisgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgICAgIDAsIDAsCisg
ICAgICAgICAgICBudWxscHRyLAorICAgICAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX1ZPSURf
X1ZPSUQsCisgICAgICAgICAgICBHX1RZUEVfTk9ORSwgMCk7CiB9CiAKIFdlYktpdE5vdGlmaWNh
dGlvbiogd2Via2l0Tm90aWZpY2F0aW9uQ3JlYXRlKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIGNv
bnN0IFdlYktpdDo6V2ViTm90aWZpY2F0aW9uJiB3ZWJOb3RpZmljYXRpb24pCkBAIC0xODcsMyAr
MjE2LDE4IEBAIGNvbnN0IGdjaGFyKiB3ZWJraXRfbm90aWZpY2F0aW9uX2dldF9ib2R5KFdlYktp
dE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQogCiAgICAgcmV0dXJuIG5vdGlmaWNhdGlvbi0+
cHJpdi0+Ym9keS5kYXRhKCk7CiB9CisKKy8qKgorICogd2Via2l0X25vdGlmaWNhdGlvbl9jbG9z
ZToKKyAqIEBub3RpZmljYXRpb246IGEgI1dlYktpdE5vdGlmaWNhdGlvbgorICoKKyAqIENsb3Nl
cyB0aGUgbm90aWZpY2F0aW9uLgorICoKKyAqIFNpbmNlOiAyLjgKKyAqLwordm9pZCB3ZWJraXRf
bm90aWZpY2F0aW9uX2Nsb3NlKFdlYktpdE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uKQorewor
ICAgIGdfcmV0dXJuX2lmX2ZhaWwoV0VCS0lUX0lTX05PVElGSUNBVElPTihub3RpZmljYXRpb24p
KTsKKworICAgIGdfc2lnbmFsX2VtaXQobm90aWZpY2F0aW9uLCBzaWduYWxzW0NMT1NFRF0sIDAp
OworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
Tm90aWZpY2F0aW9uLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRO
b3RpZmljYXRpb24uaAppbmRleCA1ZTE5NjU2Li5hYTU2ZmQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXROb3RpZmljYXRpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXROb3RpZmljYXRpb24uaApAQCAtNzAs
NiArNzAsOSBAQCB3ZWJraXRfbm90aWZpY2F0aW9uX2dldF90aXRsZSAgICAgICAgICAgICAgICAo
V2ViS2l0Tm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pOwogV0VCS0lUX0FQSSBjb25zdCBnY2hh
ciAqCiB3ZWJraXRfbm90aWZpY2F0aW9uX2dldF9ib2R5ICAgICAgICAgICAgICAgICAoV2ViS2l0
Tm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pOwogCitXRUJLSVRfQVBJIHZvaWQKK3dlYmtpdF9u
b3RpZmljYXRpb25fY2xvc2UgICAgICAgICAgICAgICAgICAgIChXZWJLaXROb3RpZmljYXRpb24q
IG5vdGlmaWNhdGlvbik7CisKIEdfRU5EX0RFQ0xTCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Tm90aWZpY2F0aW9uUHJvdmlkZXIu
Y3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Tm90aWZpY2F0aW9u
UHJvdmlkZXIuY3BwCmluZGV4IDE3Y2Y2NTcuLmQwMWY4ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdE5vdGlmaWNhdGlvblByb3ZpZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXROb3RpZmljYXRpb25Q
cm92aWRlci5jcHAKQEAgLTg2LDEyICs4NiwyMiBAQCBXZWJLaXROb3RpZmljYXRpb25Qcm92aWRl
cjo6V2ViS2l0Tm90aWZpY2F0aW9uUHJvdmlkZXIoV2ViTm90aWZpY2F0aW9uTWFuYWdlclBybwog
ICAgIFdLTm90aWZpY2F0aW9uTWFuYWdlclNldFByb3ZpZGVyKHRvQVBJKG5vdGlmaWNhdGlvbk1h
bmFnZXIpLCByZWludGVycHJldF9jYXN0PFdLTm90aWZpY2F0aW9uUHJvdmlkZXJCYXNlKj4oJndr
Tm90aWZpY2F0aW9uUHJvdmlkZXIpKTsKIH0KIAordm9pZCBXZWJLaXROb3RpZmljYXRpb25Qcm92
aWRlcjo6bm90aWZpY2F0aW9uQ2xvc2VDYWxsYmFjayhXZWJLaXROb3RpZmljYXRpb24qIG5vdGlm
aWNhdGlvbiwgV2ViS2l0Tm90aWZpY2F0aW9uUHJvdmlkZXIqIHByb3ZpZGVyKQoreworICAgIHVp
bnQ2NF90IG5vdGlmaWNhdGlvbklEID0gd2Via2l0X25vdGlmaWNhdGlvbl9nZXRfaWQobm90aWZp
Y2F0aW9uKTsKKyAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0PiwgMT4gYXJyYXlJRHM7Cisg
ICAgYXJyYXlJRHMudW5jaGVja2VkQXBwZW5kKEFQSTo6VUludDY0OjpjcmVhdGUobm90aWZpY2F0
aW9uSUQpKTsKKyAgICBwcm92aWRlci0+bV9ub3RpZmljYXRpb25NYW5hZ2VyLT5wcm92aWRlckRp
ZENsb3NlTm90aWZpY2F0aW9ucyhBUEk6OkFycmF5OjpjcmVhdGUoV1RGOjptb3ZlKGFycmF5SURz
KSkuZ2V0KCkpOworICAgIHByb3ZpZGVyLT5tX25vdGlmaWNhdGlvbnMucmVtb3ZlKG5vdGlmaWNh
dGlvbklEKTsKK30KKwogdm9pZCBXZWJLaXROb3RpZmljYXRpb25Qcm92aWRlcjo6c2hvdyhXZWJQ
YWdlUHJveHkqIHBhZ2UsIGNvbnN0IFdlYk5vdGlmaWNhdGlvbiYgd2ViTm90aWZpY2F0aW9uKQog
ewogICAgIEdSZWZQdHI8V2ViS2l0Tm90aWZpY2F0aW9uPiBub3RpZmljYXRpb24gPSBtX25vdGlm
aWNhdGlvbnMuZ2V0KHdlYk5vdGlmaWNhdGlvbi5ub3RpZmljYXRpb25JRCgpKTsKIAogICAgIGlm
ICghbm90aWZpY2F0aW9uKSB7CiAgICAgICAgIG5vdGlmaWNhdGlvbiA9IGFkb3B0R1JlZih3ZWJr
aXROb3RpZmljYXRpb25DcmVhdGUoV0VCS0lUX1dFQl9WSUVXKHBhZ2UtPnZpZXdXaWRnZXQoKSks
IHdlYk5vdGlmaWNhdGlvbikpOworICAgICAgICBnX3NpZ25hbF9jb25uZWN0KG5vdGlmaWNhdGlv
bi5nZXQoKSwgImNsb3NlZCIsIEdfQ0FMTEJBQ0sobm90aWZpY2F0aW9uQ2xvc2VDYWxsYmFjayks
IHRoaXMpOwogICAgICAgICBtX25vdGlmaWNhdGlvbnMuc2V0KHdlYk5vdGlmaWNhdGlvbi5ub3Rp
ZmljYXRpb25JRCgpLCBub3RpZmljYXRpb24pOwogICAgIH0KIApAQCAtMTAyLDkgKzExMiw3IEBA
IHZvaWQgV2ViS2l0Tm90aWZpY2F0aW9uUHJvdmlkZXI6OnNob3coV2ViUGFnZVByb3h5KiBwYWdl
LCBjb25zdCBXZWJOb3RpZmljYXRpb24mCiB2b2lkIFdlYktpdE5vdGlmaWNhdGlvblByb3ZpZGVy
OjpjYW5jZWxOb3RpZmljYXRpb25CeUlEKHVpbnQ2NF90IG5vdGlmaWNhdGlvbklEKQogewogICAg
IGlmIChHUmVmUHRyPFdlYktpdE5vdGlmaWNhdGlvbj4gbm90aWZpY2F0aW9uID0gbV9ub3RpZmlj
YXRpb25zLmdldChub3RpZmljYXRpb25JRCkpCi0gICAgICAgIHdlYmtpdFdlYlZpZXdFbWl0Q2xv
c2VOb3RpZmljYXRpb24od2Via2l0Tm90aWZpY2F0aW9uR2V0V2ViVmlldyhub3RpZmljYXRpb24u
Z2V0KCkpLCBub3RpZmljYXRpb24uZ2V0KCkpOwotCi0gICAgbV9ub3RpZmljYXRpb25zLnJlbW92
ZShub3RpZmljYXRpb25JRCk7CisgICAgICAgIHdlYmtpdF9ub3RpZmljYXRpb25fY2xvc2Uobm90
aWZpY2F0aW9uLmdldCgpKTsKIH0KIAogdm9pZCBXZWJLaXROb3RpZmljYXRpb25Qcm92aWRlcjo6
Y2FuY2VsKGNvbnN0IFdlYk5vdGlmaWNhdGlvbiYgd2ViTm90aWZpY2F0aW9uKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Tm90aWZpY2F0aW9uUHJv
dmlkZXIuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdE5vdGlmaWNh
dGlvblByb3ZpZGVyLmgKaW5kZXggODliYWY0NC4uNTZlZDY2YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0Tm90aWZpY2F0aW9uUHJvdmlkZXIuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXROb3RpZmljYXRpb25Q
cm92aWRlci5oCkBAIC00NSw2ICs0NSw3IEBAIHByaXZhdGU6CiAgICAgV2ViS2l0Tm90aWZpY2F0
aW9uUHJvdmlkZXIoV2ViTm90aWZpY2F0aW9uTWFuYWdlclByb3h5Kik7CiAKICAgICB2b2lkIGNh
bmNlbE5vdGlmaWNhdGlvbkJ5SUQodWludDY0X3QpOworICAgIHN0YXRpYyB2b2lkIG5vdGlmaWNh
dGlvbkNsb3NlQ2FsbGJhY2soV2ViS2l0Tm90aWZpY2F0aW9uKiwgV2ViS2l0Tm90aWZpY2F0aW9u
UHJvdmlkZXIqKTsKIAogICAgIFJlZlB0cjxXZWJOb3RpZmljYXRpb25NYW5hZ2VyUHJveHk+IG1f
bm90aWZpY2F0aW9uTWFuYWdlcjsKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBHUmVmUHRyPFdlYktp
dE5vdGlmaWNhdGlvbj4+IG1fbm90aWZpY2F0aW9uczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggMGJhMTZkYy4uYTA5NzY0
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKQEAgLTEzMSw3ICsxMzEsNiBAQCBlbnVtIHsKICAgICBBVVRIRU5USUNBVEUsCiAK
ICAgICBTSE9XX05PVElGSUNBVElPTiwKLSAgICBDTE9TRV9OT1RJRklDQVRJT04sCiAKICAgICBM
QVNUX1NJR05BTAogfTsKQEAgLTE1NSw5ICsxNTQsNyBAQCBlbnVtIHsKIAogdHlwZWRlZiBIYXNo
TWFwPHVpbnQ2NF90LCBHUmVmUHRyPFdlYktpdFdlYlJlc291cmNlPiA+IExvYWRpbmdSZXNvdXJj
ZXNNYXA7CiB0eXBlZGVmIEhhc2hNYXA8dWludDY0X3QsIEdSZWZQdHI8R1Rhc2s+ID4gU25hcHNo
b3RSZXN1bHRzTWFwOwotI2lmIFVTRShMSUJOT1RJRlkpCi10eXBlZGVmIEhhc2hNYXA8dWludDY0
X3QsIEdSZWZQdHI8Tm90aWZ5Tm90aWZpY2F0aW9uPj4gTm90aWZ5Tm90aWZpY2F0aW9uc01hcDsK
LSNlbmRpZgorCiBjbGFzcyBQYWdlTG9hZFN0YXRlT2JzZXJ2ZXI7CiAKIHN0cnVjdCBfV2ViS2l0
V2ViVmlld1ByaXZhdGUgewpAQCAtMjA5LDkgKzIwNiw2IEBAIHN0cnVjdCBfV2ViS2l0V2ViVmll
d1ByaXZhdGUgewogICAgIFNuYXBzaG90UmVzdWx0c01hcCBzbmFwc2hvdFJlc3VsdHNNYXA7CiAg
ICAgR1JlZlB0cjxXZWJLaXRBdXRoZW50aWNhdGlvblJlcXVlc3Q+IGF1dGhlbnRpY2F0aW9uUmVx
dWVzdDsKIAotI2lmIFVTRShMSUJOT1RJRlkpCi0gICAgTm90aWZ5Tm90aWZpY2F0aW9uc01hcCBu
b3RpZnlOb3RpZmljYXRpb25zTWFwOwotI2VuZGlmCiB9OwogCiBzdGF0aWMgZ3VpbnQgc2lnbmFs
c1tMQVNUX1NJR05BTF0gPSB7IDAsIH07CkBAIC01ODMsNDEgKzU3Nyw0OCBAQCBzdGF0aWMgdm9p
ZCB3ZWJraXRXZWJWaWV3SGFuZGxlRG93bmxvYWRSZXF1ZXN0KFdlYktpdFdlYlZpZXdCYXNlKiB3
ZWJWaWV3QmFzZSwgRAogICAgIHdlYmtpdERvd25sb2FkU2V0V2ViVmlldyhkb3dubG9hZC5nZXQo
KSwgV0VCS0lUX1dFQl9WSUVXKHdlYlZpZXdCYXNlKSk7CiB9CiAKLXN0YXRpYyBnYm9vbGVhbiB3
ZWJraXRXZWJWaWV3U2hvd05vdGlmaWNhdGlvbihXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBXZWJL
aXROb3RpZmljYXRpb24qIHdlYk5vdGlmaWNhdGlvbikKLXsKICNpZiBVU0UoTElCTk9USUZZKQot
ICAgIGlmICghbm90aWZ5X2lzX2luaXR0ZWQoKSkKLSAgICAgICAgbm90aWZ5X2luaXQoZ19nZXRf
cHJnbmFtZSgpKTsKK3N0YXRpYyBjb25zdCBjaGFyKiBnTm90aWZ5Tm90aWZpY2F0aW9uSUQgPSAi
d2stbm90aWZ5LW5vdGlmaWNhdGlvbiI7CiAKLSAgICBHUmVmUHRyPE5vdGlmeU5vdGlmaWNhdGlv
bj4gbm90aWZpY2F0aW9uID0gd2ViVmlldy0+cHJpdi0+bm90aWZ5Tm90aWZpY2F0aW9uc01hcC5n
ZXQod2Via2l0X25vdGlmaWNhdGlvbl9nZXRfaWQod2ViTm90aWZpY2F0aW9uKSk7Ci0gICAgaWYg
KCFub3RpZmljYXRpb24pIHsKLSAgICAgICAgbm90aWZpY2F0aW9uID0gYWRvcHRHUmVmKG5vdGlm
eV9ub3RpZmljYXRpb25fbmV3KHdlYmtpdF9ub3RpZmljYXRpb25fZ2V0X3RpdGxlKHdlYk5vdGlm
aWNhdGlvbiksCi0gICAgICAgICAgICB3ZWJraXRfbm90aWZpY2F0aW9uX2dldF9ib2R5KHdlYk5v
dGlmaWNhdGlvbiksIG51bGxwdHIpKTsKK3N0YXRpYyB2b2lkIG5vdGlmeU5vdGlmaWNhdGlvbkNs
b3NlZChOb3RpZnlOb3RpZmljYXRpb24qLCBXZWJLaXROb3RpZmljYXRpb24qIHdlYk5vdGlmaWNh
dGlvbikKK3sKKyAgICBnX29iamVjdF9zZXRfZGF0YShHX09CSkVDVCh3ZWJOb3RpZmljYXRpb24p
LCBnTm90aWZ5Tm90aWZpY2F0aW9uSUQsIG51bGxwdHIpOworICAgIHdlYmtpdF9ub3RpZmljYXRp
b25fY2xvc2Uod2ViTm90aWZpY2F0aW9uKTsKK30KIAotICAgICAgICB3ZWJWaWV3LT5wcml2LT5u
b3RpZnlOb3RpZmljYXRpb25zTWFwLnNldCh3ZWJraXRfbm90aWZpY2F0aW9uX2dldF9pZCh3ZWJO
b3RpZmljYXRpb24pLCBub3RpZmljYXRpb24pOwotICAgIH0gZWxzZQotICAgICAgICBub3RpZnlf
bm90aWZpY2F0aW9uX3VwZGF0ZShub3RpZmljYXRpb24uZ2V0KCksIHdlYmtpdF9ub3RpZmljYXRp
b25fZ2V0X3RpdGxlKHdlYk5vdGlmaWNhdGlvbiksCi0gICAgICAgICAgICB3ZWJraXRfbm90aWZp
Y2F0aW9uX2dldF9ib2R5KHdlYk5vdGlmaWNhdGlvbiksIG51bGxwdHIpOworc3RhdGljIHZvaWQg
d2ViTm90aWZpY2F0aW9uQ2xvc2VkKFdlYktpdE5vdGlmaWNhdGlvbiogd2ViTm90aWZpY2F0aW9u
KQoreworICAgIE5vdGlmeU5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uID0gTk9USUZZX05PVElG
SUNBVElPTihnX29iamVjdF9nZXRfZGF0YShHX09CSkVDVCh3ZWJOb3RpZmljYXRpb24pLCBnTm90
aWZ5Tm90aWZpY2F0aW9uSUQpKTsKKyAgICBpZiAoIW5vdGlmaWNhdGlvbikKKyAgICAgICAgcmV0
dXJuOwogCi0gICAgbm90aWZ5X25vdGlmaWNhdGlvbl9zaG93KG5vdGlmaWNhdGlvbi5nZXQoKSwg
bnVsbHB0cik7Ci0gICAgcmV0dXJuIFRSVUU7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTSh3ZWJW
aWV3KTsKLSAgICBVTlVTRURfUEFSQU0od2ViTm90aWZpY2F0aW9uKTsKLSAgICByZXR1cm4gRkFM
U0U7Ci0jZW5kaWYKKyAgICBub3RpZnlfbm90aWZpY2F0aW9uX2Nsb3NlKG5vdGlmaWNhdGlvbiwg
bnVsbHB0cik7CisgICAgZ19vYmplY3Rfc2V0X2RhdGEoR19PQkpFQ1Qod2ViTm90aWZpY2F0aW9u
KSwgZ05vdGlmeU5vdGlmaWNhdGlvbklELCBudWxscHRyKTsKIH0KKyNlbmRpZiAvLyBVU0UoTElC
Tk9USUZZKQogCi1zdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmlld0Nsb3NlTm90aWZpY2F0aW9u
KFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIFdlYktpdE5vdGlmaWNhdGlvbiogd2ViTm90aWZpY2F0
aW9uKQorc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdTaG93Tm90aWZpY2F0aW9uKFdlYktp
dFdlYlZpZXcqLCBXZWJLaXROb3RpZmljYXRpb24qIHdlYk5vdGlmaWNhdGlvbikKIHsKICNpZiBV
U0UoTElCTk9USUZZKQotICAgIGlmIChHUmVmUHRyPE5vdGlmeU5vdGlmaWNhdGlvbj4gbm90aWZp
Y2F0aW9uID0gd2ViVmlldy0+cHJpdi0+bm90aWZ5Tm90aWZpY2F0aW9uc01hcC5nZXQod2Via2l0
X25vdGlmaWNhdGlvbl9nZXRfaWQod2ViTm90aWZpY2F0aW9uKSkpIHsKLSAgICAgICAgbm90aWZ5
X25vdGlmaWNhdGlvbl9jbG9zZShub3RpZmljYXRpb24uZ2V0KCksIG51bGxwdHIpOwotICAgICAg
ICB3ZWJWaWV3LT5wcml2LT5ub3RpZnlOb3RpZmljYXRpb25zTWFwLnJlbW92ZSh3ZWJraXRfbm90
aWZpY2F0aW9uX2dldF9pZCh3ZWJOb3RpZmljYXRpb24pKTsKKyAgICBpZiAoIW5vdGlmeV9pc19p
bml0dGVkKCkpCisgICAgICAgIG5vdGlmeV9pbml0KGdfZ2V0X3ByZ25hbWUoKSk7CisKKyAgICBO
b3RpZnlOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbiA9IE5PVElGWV9OT1RJRklDQVRJT04oZ19v
YmplY3RfZ2V0X2RhdGEoR19PQkpFQ1Qod2ViTm90aWZpY2F0aW9uKSwgZ05vdGlmeU5vdGlmaWNh
dGlvbklEKSk7CisgICAgaWYgKCFub3RpZmljYXRpb24pIHsKKyAgICAgICAgbm90aWZpY2F0aW9u
ID0gbm90aWZ5X25vdGlmaWNhdGlvbl9uZXcod2Via2l0X25vdGlmaWNhdGlvbl9nZXRfdGl0bGUo
d2ViTm90aWZpY2F0aW9uKSwKKyAgICAgICAgICAgIHdlYmtpdF9ub3RpZmljYXRpb25fZ2V0X2Jv
ZHkod2ViTm90aWZpY2F0aW9uKSwgbnVsbHB0cik7CisKKyAgICAgICAgZ19zaWduYWxfY29ubmVj
dF9vYmplY3Qobm90aWZpY2F0aW9uLCAiY2xvc2VkIiwgR19DQUxMQkFDSyhub3RpZnlOb3RpZmlj
YXRpb25DbG9zZWQpLCB3ZWJOb3RpZmljYXRpb24sIHN0YXRpY19jYXN0PEdDb25uZWN0RmxhZ3M+
KDApKTsKKyAgICAgICAgZ19zaWduYWxfY29ubmVjdCh3ZWJOb3RpZmljYXRpb24sICJjbG9zZWQi
LCBHX0NBTExCQUNLKHdlYk5vdGlmaWNhdGlvbkNsb3NlZCksIG51bGxwdHIpOworICAgICAgICBn
X29iamVjdF9zZXRfZGF0YV9mdWxsKEdfT0JKRUNUKHdlYk5vdGlmaWNhdGlvbiksIGdOb3RpZnlO
b3RpZmljYXRpb25JRCwgbm90aWZpY2F0aW9uLCBzdGF0aWNfY2FzdDxHRGVzdHJveU5vdGlmeT4o
Z19vYmplY3RfdW5yZWYpKTsKKyAgICB9IGVsc2UgeworICAgICAgICBub3RpZnlfbm90aWZpY2F0
aW9uX3VwZGF0ZShub3RpZmljYXRpb24sIHdlYmtpdF9ub3RpZmljYXRpb25fZ2V0X3RpdGxlKHdl
Yk5vdGlmaWNhdGlvbiksCisgICAgICAgICAgICB3ZWJraXRfbm90aWZpY2F0aW9uX2dldF9ib2R5
KHdlYk5vdGlmaWNhdGlvbiksIG51bGxwdHIpOwogICAgIH0KKworICAgIG5vdGlmeV9ub3RpZmlj
YXRpb25fc2hvdyhub3RpZmljYXRpb24sIG51bGxwdHIpOwogICAgIHJldHVybiBUUlVFOwogI2Vs
c2UKLSAgICBVTlVTRURfUEFSQU0od2ViVmlldyk7CiAgICAgVU5VU0VEX1BBUkFNKHdlYk5vdGlm
aWNhdGlvbik7CiAgICAgcmV0dXJuIEZBTFNFOwogI2VuZGlmCkBAIC03ODQsNyArNzg1LDYgQEAg
c3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNz
KiB3ZWJWaWV3Q2xhc3MpCiAgICAgd2ViVmlld0NsYXNzLT5ydW5fZmlsZV9jaG9vc2VyID0gd2Vi
a2l0V2ViVmlld1J1bkZpbGVDaG9vc2VyOwogICAgIHdlYlZpZXdDbGFzcy0+YXV0aGVudGljYXRl
ID0gd2Via2l0V2ViVmlld0F1dGhlbnRpY2F0ZTsKICAgICB3ZWJWaWV3Q2xhc3MtPnNob3dfbm90
aWZpY2F0aW9uID0gd2Via2l0V2ViVmlld1Nob3dOb3RpZmljYXRpb247Ci0gICAgd2ViVmlld0Ns
YXNzLT5jbG9zZV9ub3RpZmljYXRpb24gPSB3ZWJraXRXZWJWaWV3Q2xvc2VOb3RpZmljYXRpb247
CiAKICAgICAvKioKICAgICAgKiBXZWJLaXRXZWJWaWV3OndlYi1jb250ZXh0OgpAQCAtMTcxNCwz
MCArMTcxNCw2IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19jbGFzc19pbml0KFdlYktp
dFdlYlZpZXdDbGFzcyogd2ViVmlld0NsYXNzKQogICAgICAgICAgICAgd2Via2l0X21hcnNoYWxf
Qk9PTEVBTl9fT0JKRUNULAogICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDEsCiAgICAgICAg
ICAgICBXRUJLSVRfVFlQRV9OT1RJRklDQVRJT04pOwotCi0gICAgLyoqCi0gICAgICogV2ViS2l0
Tm90aWZpY2F0aW9uOjpjbG9zZS1ub3RpZmljYXRpb246Ci0gICAgICogQHdlYl92aWV3OiB0aGUg
I1dlYktpdFdlYlZpZXcKLSAgICAgKiBAbm90aWZpY2F0aW9uOiBhICNXZWJLaXROb2ZpY2F0aW9u
Ci0gICAgICoKLSAgICAgKiBUaGlzIHNpZ25hbCBpcyBlbWl0dGVkIHdoZW4gYSBub3RpZmljYXRp
b24gc2hvdWxkIGJlIHdpdGhkcmF3bi4KLSAgICAgKgotICAgICAqIFRoZSBkZWZhdWx0IGhhbmRs
ZXIgd2lsbCBjbG9zZSB0aGUgbm90aWZpY2F0aW9uIHVzaW5nIGxpYm5vdGlmeSwgaWYgYnVpbHQg
d2l0aAotICAgICAqIHN1cHBvcnQgZm9yIGl0LgotICAgICAqCi0gICAgICogUmV0dXJuczogJVRS
VUUgdG8gc3RvcCBvdGhlciBoYW5kbGVycyBmcm9tIGJlaW5nIGludm9rZWQuICVGQUxTRSBvdGhl
cndpc2UuCi0gICAgICoKLSAgICAgKiBTaW5jZTogMi44Ci0gICAgICovCi0gICAgc2lnbmFsc1tD
TE9TRV9OT1RJRklDQVRJT05dID0KLSAgICAgICAgZ19zaWduYWxfbmV3KCJjbG9zZS1ub3RpZmlj
YXRpb24iLAotICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MoZ09iamVjdENsYXNzKSwKLSAg
ICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VU
KFdlYktpdFdlYlZpZXdDbGFzcywgY2xvc2Vfbm90aWZpY2F0aW9uKSwKLSAgICAgICAgICAgIGdf
c2lnbmFsX2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgbnVsbHB0ciAvKiBhY2N1bXVsYXRvciBk
YXRhICovLAotICAgICAgICAgICAgd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fT0JKRUNULAotICAg
ICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDEsCi0gICAgICAgICAgICBXRUJLSVRfVFlQRV9OT1RJ
RklDQVRJT04pOwogfQogCiBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3Q2FuY2VsQXV0aGVudGlj
YXRpb25SZXF1ZXN0KFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCkBAIC0yMTE1LDEyICsyMDkxLDYg
QEAgYm9vbCB3ZWJraXRXZWJWaWV3RW1pdFNob3dOb3RpZmljYXRpb24oV2ViS2l0V2ViVmlldyog
d2ViVmlldywgV2ViS2l0Tm90aWZpY2F0aW8KICAgICByZXR1cm4gaGFuZGxlZDsKIH0KIAotdm9p
ZCB3ZWJraXRXZWJWaWV3RW1pdENsb3NlTm90aWZpY2F0aW9uKFdlYktpdFdlYlZpZXcqIHdlYlZp
ZXcsIFdlYktpdE5vdGlmaWNhdGlvbiogd2ViTm90aWZpY2F0aW9uKQotewotICAgIGdib29sZWFu
IGhhbmRsZWQ7Ci0gICAgZ19zaWduYWxfZW1pdCh3ZWJWaWV3LCBzaWduYWxzW0NMT1NFX05PVElG
SUNBVElPTl0sIDAsIHdlYk5vdGlmaWNhdGlvbiwgJmhhbmRsZWQpOwotfQotCiAvKioKICAqIHdl
YmtpdF93ZWJfdmlld19uZXc6CiAgKgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9ndGsvV2ViS2l0V2ViVmlldy5oCmluZGV4IGZmODE0MmQuLjc4NTI3YjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmgKQEAgLTI0NCwx
MyArMjQ0LDEyIEBAIHN0cnVjdCBfV2ViS2l0V2ViVmlld0NsYXNzIHsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzICAg
ICAgICAgZXJyb3JzKTsKICAgICBnYm9vbGVhbiAgICgqIHNob3dfbm90aWZpY2F0aW9uKSAgICAg
ICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAgICAgICAqd2ViX3ZpZXcsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJLaXROb3RpZmljYXRpb24g
ICAgICAgICAgKm5vdGlmaWNhdGlvbik7Ci0gICAgZ2Jvb2xlYW4gICAoKiBjbG9zZV9ub3RpZmlj
YXRpb24pICAgICAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgICAgICAgKndlYl92aWV3LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2ViS2l0Tm90
aWZpY2F0aW9uICAgICAgICAgICpub3RpZmljYXRpb24pOwogCiAgICAgdm9pZCAoKl93ZWJraXRf
cmVzZXJ2ZWQwKSAodm9pZCk7CiAgICAgdm9pZCAoKl93ZWJraXRfcmVzZXJ2ZWQxKSAodm9pZCk7
CiAgICAgdm9pZCAoKl93ZWJraXRfcmVzZXJ2ZWQyKSAodm9pZCk7CiAgICAgdm9pZCAoKl93ZWJr
aXRfcmVzZXJ2ZWQzKSAodm9pZCk7CisgICAgdm9pZCAoKl93ZWJraXRfcmVzZXJ2ZWQ0KSAodm9p
ZCk7CiB9OwogCiBXRUJLSVRfQVBJIEdUeXBlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld1ByaXZhdGUuaAppbmRleCBhYjZlOTc4Li44
YjI0ZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRXZWJWaWV3UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFdlYlZpZXdQcml2YXRlLmgKQEAgLTU5LDcgKzU5LDYgQEAgdm9pZCB3ZWJraXRXZWJW
aWV3U3VibWl0Rm9ybVJlcXVlc3QoV2ViS2l0V2ViVmlldyosIFdlYktpdEZvcm1TdWJtaXNzaW9u
UmVxdWVzdCoKIHZvaWQgd2Via2l0V2ViVmlld0hhbmRsZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KFdlYktpdFdlYlZpZXcqLCBXZWJLaXQ6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkqKTsK
IHZvaWQgd2Via2l0V2ViVmlld0luc2VjdXJlQ29udGVudERldGVjdGVkKFdlYktpdFdlYlZpZXcq
LCBXZWJLaXRJbnNlY3VyZUNvbnRlbnRFdmVudCk7CiBib29sIHdlYmtpdFdlYlZpZXdFbWl0U2hv
d05vdGlmaWNhdGlvbihXZWJLaXRXZWJWaWV3KiwgV2ViS2l0Tm90aWZpY2F0aW9uKik7Ci12b2lk
IHdlYmtpdFdlYlZpZXdFbWl0Q2xvc2VOb3RpZmljYXRpb24oV2ViS2l0V2ViVmlldyosIFdlYktp
dE5vdGlmaWNhdGlvbiopOwogdm9pZCB3ZWJraXRXZWJWaWV3V2ViUHJvY2Vzc0NyYXNoZWQoV2Vi
S2l0V2ViVmlldyopOwogdm9pZCB3ZWJraXRXZWJWaWV3SXNQbGF5aW5nQXVkaW9DaGFuZ2VkKFdl
YktpdFdlYlZpZXcqKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9ndGsvZG9jcy93ZWJraXQyZ3RrLTQuMC1zZWN0aW9ucy50eHQgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstNC4wLXNlY3Rpb25zLnR4dAppbmRleCA0
MjM2ZTA2Li4wODA1ODRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9kb2NzL3dlYmtpdDJndGstNC4wLXNlY3Rpb25zLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstNC4wLXNlY3Rpb25zLnR4dApAQCAt
NjI2LDYgKzYyNiw3IEBAIFdlYktpdE5vdGlmaWNhdGlvbgogd2Via2l0X25vdGlmaWNhdGlvbl9n
ZXRfaWQKIHdlYmtpdF9ub3RpZmljYXRpb25fZ2V0X3RpdGxlCiB3ZWJraXRfbm90aWZpY2F0aW9u
X2dldF9ib2R5Cit3ZWJraXRfbm90aWZpY2F0aW9uX2Nsb3NlCiAKIDxTVUJTRUNUSU9OIFN0YW5k
YXJkPgogV2ViS2l0Tm90aWZpY2F0aW9uQ2xhc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxv
ZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1ODc1YzE1Li4yODg3NzAyIDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTUtMDItMDYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisg
ICAgICAgIFtHVEtdIFJlbW92ZSBXZWJLaXRXZWJWaWV3OjpjbG9zZS1ub3RpZmljYXRpb24gc2ln
bmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDEz
MzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgbm90aWZpY2F0aW9ucyB1bml0IHRlc3RzIGFjY29yZGluZyB0byB0aGUgQVBJIGNoYW5nZXMs
IGFuZAorICAgICAgICBhZGQgYSB0ZXN0IGNhc2UgdG8gY2hlY2sgdGhhdCBvbmNsb3NlIGV2ZW50
IGlzIGZpcmVkIHdoZW4gYQorICAgICAgICBub3RpZmljYXRpb24gaXMgY2xvc2VkIGJ5IHRoZSB1
c2VyLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyR3RrL1Rlc3RXZWJL
aXRXZWJWaWV3LmNwcDoKKyAgICAgICAgKHRlc3RXZWJWaWV3Tm90aWZpY2F0aW9uKToKKwogMjAx
NS0wMi0wNSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPiBhbmQg
WGFiaWVyIFJvZHJpZ3VleiBDYWx2YXIgPGNhbHZhcmlzQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W1N0cmVhbXMgQVBJXSBJbXBsZW1lbnQgYSBiYXJlYm9uZSBSZWFkYWJsZVN0cmVhbSBpbnRlcmZh
Y2UKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mkd0ay9UZXN0
V2ViS2l0V2ViVmlldy5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJHdGsv
VGVzdFdlYktpdFdlYlZpZXcuY3BwCmluZGV4IDE1NGUzOWIuLmY2ZmJjMWEgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mkd0ay9UZXN0V2ViS2l0V2ViVmlldy5j
cHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyR3RrL1Rlc3RXZWJLaXRX
ZWJWaWV3LmNwcApAQCAtNjAyLDcgKzYwMiw4IEBAIHB1YmxpYzoKICAgICAgICAgTm9uZSwKICAg
ICAgICAgUGVybWlzc2lvbiwKICAgICAgICAgU2hvd24sCi0gICAgICAgIENhbmNlbGxlZAorICAg
ICAgICBDbG9zZWQsCisgICAgICAgIE9uQ2xvc2VkLAogICAgIH07CiAKICAgICBzdGF0aWMgZ2Jv
b2xlYW4gcGVybWlzc2lvblJlcXVlc3RDYWxsYmFjayhXZWJLaXRXZWJWaWV3KiwgV2ViS2l0UGVy
bWlzc2lvblJlcXVlc3QgKnJlcXVlc3QsIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0KiB0ZXN0KQpA
QCAtNjE5LDM1ICs2MjAsNTAgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gVFJVRTsKICAgICB9
CiAKKyAgICBzdGF0aWMgZ2Jvb2xlYW4gbm90aWZpY2F0aW9uQ2xvc2VkQ2FsbGJhY2soV2ViS2l0
Tm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24sIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0KiB0ZXN0
KQorICAgIHsKKyAgICAgICAgZ19hc3NlcnQodGVzdC0+bV9ub3RpZmljYXRpb24gPT0gbm90aWZp
Y2F0aW9uKTsKKyAgICAgICAgdGVzdC0+bV9ub3RpZmljYXRpb24gPSBudWxscHRyOworICAgICAg
ICB0ZXN0LT5tX2V2ZW50ID0gQ2xvc2VkOworICAgICAgICBpZiAoZ19tYWluX2xvb3BfaXNfcnVu
bmluZyh0ZXN0LT5tX21haW5Mb29wKSkKKyAgICAgICAgICAgIGdfbWFpbl9sb29wX3F1aXQodGVz
dC0+bV9tYWluTG9vcCk7CisgICAgICAgIHJldHVybiBUUlVFOworICAgIH0KKwogICAgIHN0YXRp
YyBnYm9vbGVhbiBzaG93Tm90aWZpY2F0aW9uQ2FsbGJhY2soV2ViS2l0V2ViVmlldyosIFdlYktp
dE5vdGlmaWNhdGlvbiogbm90aWZpY2F0aW9uLCBOb3RpZmljYXRpb25XZWJWaWV3VGVzdCogdGVz
dCkKICAgICB7CiAgICAgICAgIHRlc3QtPmFzc2VydE9iamVjdElzRGVsZXRlZFdoZW5UZXN0Rmlu
aXNoZXMoR19PQkpFQ1Qobm90aWZpY2F0aW9uKSk7CiAgICAgICAgIHRlc3QtPm1fbm90aWZpY2F0
aW9uID0gbm90aWZpY2F0aW9uOworICAgICAgICBnX3NpZ25hbF9jb25uZWN0KG5vdGlmaWNhdGlv
biwgImNsb3NlZCIsIEdfQ0FMTEJBQ0sobm90aWZpY2F0aW9uQ2xvc2VkQ2FsbGJhY2spLCB0ZXN0
KTsKICAgICAgICAgdGVzdC0+bV9ldmVudCA9IFNob3duOwogICAgICAgICBnX21haW5fbG9vcF9x
dWl0KHRlc3QtPm1fbWFpbkxvb3ApOwogICAgICAgICByZXR1cm4gVFJVRTsKICAgICB9CiAKLSAg
ICBzdGF0aWMgZ2Jvb2xlYW4gY2xvc2VOb3RpZmljYXRpb25DYWxsYmFjayhXZWJLaXRXZWJWaWV3
KiwgV2ViS2l0Tm90aWZpY2F0aW9uKiwgTm90aWZpY2F0aW9uV2ViVmlld1Rlc3QqIHRlc3QpCisg
ICAgc3RhdGljIHZvaWQgbm90aWZpY2F0aW9uc01lc3NhZ2VSZWNlaXZlZENhbGxiYWNrKFdlYktp
dFVzZXJDb250ZW50TWFuYWdlciogdXNlckNvbnRlbnRNYW5hZ2VyLCBXZWJLaXRKYXZhc2NyaXB0
UmVzdWx0KiwgTm90aWZpY2F0aW9uV2ViVmlld1Rlc3QqIHRlc3QpCiAgICAgewotICAgICAgICB0
ZXN0LT5tX25vdGlmaWNhdGlvbiA9IG51bGxwdHI7Ci0gICAgICAgIHRlc3QtPm1fZXZlbnQgPSBD
YW5jZWxsZWQ7CisgICAgICAgIHRlc3QtPm1fZXZlbnQgPSBPbkNsb3NlZDsKICAgICAgICAgZ19t
YWluX2xvb3BfcXVpdCh0ZXN0LT5tX21haW5Mb29wKTsKLSAgICAgICAgcmV0dXJuIFRSVUU7CiAg
ICAgfQogCiAgICAgTm90aWZpY2F0aW9uV2ViVmlld1Rlc3QoKQotICAgICAgICA6IG1fZXZlbnQo
Tm9uZSkKKyAgICAgICAgOiBXZWJWaWV3VGVzdCh3ZWJraXRfdXNlcl9jb250ZW50X21hbmFnZXJf
bmV3KCkpCisgICAgICAgICwgbV9ub3RpZmljYXRpb24obnVsbHB0cikKKyAgICAgICAgLCBtX2V2
ZW50KE5vbmUpCiAgICAgewogICAgICAgICBnX3NpZ25hbF9jb25uZWN0KG1fd2ViVmlldywgInBl
cm1pc3Npb24tcmVxdWVzdCIsIEdfQ0FMTEJBQ0socGVybWlzc2lvblJlcXVlc3RDYWxsYmFjayks
IHRoaXMpOwogICAgICAgICBnX3NpZ25hbF9jb25uZWN0KG1fd2ViVmlldywgInNob3ctbm90aWZp
Y2F0aW9uIiwgR19DQUxMQkFDSyhzaG93Tm90aWZpY2F0aW9uQ2FsbGJhY2spLCB0aGlzKTsKLSAg
ICAgICAgZ19zaWduYWxfY29ubmVjdChtX3dlYlZpZXcsICJjbG9zZS1ub3RpZmljYXRpb24iLCBH
X0NBTExCQUNLKGNsb3NlTm90aWZpY2F0aW9uQ2FsbGJhY2spLCB0aGlzKTsKLQorICAgICAgICBX
ZWJLaXRVc2VyQ29udGVudE1hbmFnZXIqIG1hbmFnZXIgPSB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3Vz
ZXJfY29udGVudF9tYW5hZ2VyKG1fd2ViVmlldyk7CisgICAgICAgIHdlYmtpdF91c2VyX2NvbnRl
bnRfbWFuYWdlcl9yZWdpc3Rlcl9zY3JpcHRfbWVzc2FnZV9oYW5kbGVyKG1hbmFnZXIsICJub3Rp
ZmljYXRpb25zIik7CisgICAgICAgIGdfc2lnbmFsX2Nvbm5lY3QobWFuYWdlciwgInNjcmlwdC1t
ZXNzYWdlLXJlY2VpdmVkOjpub3RpZmljYXRpb25zIiwgR19DQUxMQkFDSyhub3RpZmljYXRpb25z
TWVzc2FnZVJlY2VpdmVkQ2FsbGJhY2spLCB0aGlzKTsKICAgICB9CiAKICAgICB+Tm90aWZpY2F0
aW9uV2ViVmlld1Rlc3QoKQogICAgIHsKICAgICAgICAgZ19zaWduYWxfaGFuZGxlcnNfZGlzY29u
bmVjdF9tYXRjaGVkKG1fd2ViVmlldywgR19TSUdOQUxfTUFUQ0hfREFUQSwgMCwgMCwgMCwgMCwg
dGhpcyk7CisgICAgICAgIFdlYktpdFVzZXJDb250ZW50TWFuYWdlciogbWFuYWdlciA9IHdlYmtp
dF93ZWJfdmlld19nZXRfdXNlcl9jb250ZW50X21hbmFnZXIobV93ZWJWaWV3KTsKKyAgICAgICAg
Z19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVjdF9tYXRjaGVkKG1hbmFnZXIsIEdfU0lHTkFMX01B
VENIX0RBVEEsIDAsIDAsIDAsIDAsIHRoaXMpOworICAgICAgICB3ZWJraXRfdXNlcl9jb250ZW50
X21hbmFnZXJfdW5yZWdpc3Rlcl9zY3JpcHRfbWVzc2FnZV9oYW5kbGVyKG1hbmFnZXIsICJub3Rp
ZmljYXRpb25zIik7CiAgICAgfQogCiAgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uQW5kV2FpdFVu
dGlsR2l2ZW4oKQpAQCAtNjY3LDEzICs2ODMsMjMgQEAgcHVibGljOgogICAgICAgICBnX21haW5f
bG9vcF9ydW4obV9tYWluTG9vcCk7CiAgICAgfQogCi0gICAgdm9pZCBjbG9zZU5vdGlmaWNhdGlv
bkFuZFdhaXRVbnRpbENhbmNlbGxlZCgpCisgICAgdm9pZCBjbG9zZU5vdGlmaWNhdGlvbkFuZFdh
aXRVbnRpbENsb3NlZCgpCiAgICAgewogICAgICAgICBtX2V2ZW50ID0gTm9uZTsKICAgICAgICAg
d2Via2l0X3dlYl92aWV3X3J1bl9qYXZhc2NyaXB0KG1fd2ViVmlldywgIm4uY2xvc2UoKSIsIG51
bGxwdHIsIG51bGxwdHIsIG51bGxwdHIpOwogICAgICAgICBnX21haW5fbG9vcF9ydW4obV9tYWlu
TG9vcCk7CiAgICAgfQogCisgICAgdm9pZCBjbG9zZU5vdGlmaWNhdGlvbkFuZFdhaXRVbnRpbE9u
Q2xvc2VkKCkKKyAgICB7CisgICAgICAgIGdfYXNzZXJ0KG1fbm90aWZpY2F0aW9uKTsKKyAgICAg
ICAgbV9ldmVudCA9IE5vbmU7CisgICAgICAgIHJ1bkphdmFTY3JpcHRBbmRXYWl0VW50aWxGaW5p
c2hlZCgibi5vbmNsb3NlID0gZnVuY3Rpb24oKSB7IHdpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRs
ZXJzLm5vdGlmaWNhdGlvbnMucG9zdE1lc3NhZ2UoJ2Nsb3NlZCcpOyB9IiwgbnVsbHB0cik7Cisg
ICAgICAgIHdlYmtpdF9ub3RpZmljYXRpb25fY2xvc2UobV9ub3RpZmljYXRpb24pOworICAgICAg
ICBnX2Fzc2VydChtX2V2ZW50ID09IENsb3NlZCk7CisgICAgICAgIGdfbWFpbl9sb29wX3J1biht
X21haW5Mb29wKTsKKyAgICB9CisKICAgICBOb3RpZmljYXRpb25FdmVudCBtX2V2ZW50OwogICAg
IFdlYktpdE5vdGlmaWNhdGlvbiogbV9ub3RpZmljYXRpb247CiB9OwpAQCAtNjg1LDcgKzcxMSw2
IEBAIHN0YXRpYyB2b2lkIHRlc3RXZWJWaWV3Tm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbldlYlZp
ZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyCiAgICAgdGVzdC0+d2FpdFVudGlsTG9hZEZpbmlz
aGVkKCk7CiAKICAgICB0ZXN0LT5yZXF1ZXN0UGVybWlzc2lvbkFuZFdhaXRVbnRpbEdpdmVuKCk7
Ci0KICAgICBnX2Fzc2VydCh0ZXN0LT5tX2V2ZW50ID09IE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0
OjpQZXJtaXNzaW9uKTsKIAogICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0aXRsZSA9ICJUaGlzIGlz
IGEgbm90aWZpY2F0aW9uIjsKQEAgLTY5NywxOCArNzIyLDIxIEBAIHN0YXRpYyB2b2lkIHRlc3RX
ZWJWaWV3Tm90aWZpY2F0aW9uKE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rw
b2ludGVyCiAgICAgZ19hc3NlcnRfY21wc3RyKHdlYmtpdF9ub3RpZmljYXRpb25fZ2V0X3RpdGxl
KHRlc3QtPm1fbm90aWZpY2F0aW9uKSwgPT0sIHRpdGxlKTsKICAgICBnX2Fzc2VydF9jbXBzdHIo
d2Via2l0X25vdGlmaWNhdGlvbl9nZXRfYm9keSh0ZXN0LT5tX25vdGlmaWNhdGlvbiksID09LCBi
b2R5KTsKIAotICAgIHRlc3QtPmNsb3NlTm90aWZpY2F0aW9uQW5kV2FpdFVudGlsQ2FuY2VsbGVk
KCk7Ci0KLSAgICBnX2Fzc2VydCh0ZXN0LT5tX2V2ZW50ID09IE5vdGlmaWNhdGlvbldlYlZpZXdU
ZXN0OjpDYW5jZWxsZWQpOworICAgIHRlc3QtPmNsb3NlTm90aWZpY2F0aW9uQW5kV2FpdFVudGls
Q2xvc2VkKCk7CisgICAgZ19hc3NlcnQodGVzdC0+bV9ldmVudCA9PSBOb3RpZmljYXRpb25XZWJW
aWV3VGVzdDo6Q2xvc2VkKTsKIAogICAgIHRlc3QtPnJlcXVlc3ROb3RpZmljYXRpb25BbmRXYWl0
VW50aWxTaG93bih0aXRsZSwgYm9keSk7CisgICAgZ19hc3NlcnQodGVzdC0+bV9ldmVudCA9PSBO
b3RpZmljYXRpb25XZWJWaWV3VGVzdDo6U2hvd24pOworCisgICAgdGVzdC0+Y2xvc2VOb3RpZmlj
YXRpb25BbmRXYWl0VW50aWxPbkNsb3NlZCgpOworICAgIGdfYXNzZXJ0KHRlc3QtPm1fZXZlbnQg
PT0gTm90aWZpY2F0aW9uV2ViVmlld1Rlc3Q6Ok9uQ2xvc2VkKTsKIAorICAgIHRlc3QtPnJlcXVl
c3ROb3RpZmljYXRpb25BbmRXYWl0VW50aWxTaG93bih0aXRsZSwgYm9keSk7CiAgICAgZ19hc3Nl
cnQodGVzdC0+bV9ldmVudCA9PSBOb3RpZmljYXRpb25XZWJWaWV3VGVzdDo6U2hvd24pOwogCiAg
ICAgdGVzdC0+bG9hZFVSSShnU2VydmVyLT5nZXRVUklGb3JQYXRoKCIvIikuZGF0YSgpKTsKICAg
ICB0ZXN0LT53YWl0VW50aWxMb2FkRmluaXNoZWQoKTsKLQotICAgIGdfYXNzZXJ0KHRlc3QtPm1f
ZXZlbnQgPT0gTm90aWZpY2F0aW9uV2ViVmlld1Rlc3Q6OkNhbmNlbGxlZCk7CisgICAgZ19hc3Nl
cnQodGVzdC0+bV9ldmVudCA9PSBOb3RpZmljYXRpb25XZWJWaWV3VGVzdDo6Q2xvc2VkKTsKIH0K
IAogc3RhdGljIHZvaWQgdGVzdFdlYlZpZXdJc1BsYXlpbmdBdWRpbyhJc1BsYXlpbmdBdWRpb1dl
YlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQo=
</data>
<flag name="review"
          id="271096"
          type_id="1"
          status="+"
          setter="gustavo"
    />
          </attachment>
      

    </bug>

</bugzilla>