<?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>180862</bug_id>
          
          <creation_ts>2017-12-15 03:33:37 -0800</creation_ts>
          <short_desc>[GTK][WPE] Add WebKitWebView::web-process-terminated signal and deprecate web-process-crashed</short_desc>
          <delta_ts>2017-12-18 00:55:24 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=180861</see_also>
          <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>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1382119</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-12-15 03:33:37 -0800</bug_when>
    <thetext>Once the memory pressure web process monitor is enabled in bug #180861 the web process can be killed due to memory limits. We need to expose the reason of the web process termination to allow applications handle the memory limit case. Epiphany might want to use an error page similar to the crash one, but explaining that the process was killed due to high memory used, but other applications might want to simply reload the web process silently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382120</commentid>
    <comment_count>1</comment_count>
      <attachid>329484</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-12-15 03:37:51 -0800</bug_when>
    <thetext>Created attachment 329484
Patch

WebKitWebProcessTerminationReason can be expanded to support ExceededCPULimit if we enable that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382137</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2017-12-15 05:29:41 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382159</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-12-15 08:45:43 -0800</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #1)
&gt; WebKitWebProcessTerminationReason can be expanded to support
&gt; ExceededCPULimit if we enable that.

We should definitely enable that, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382160</commentid>
    <comment_count>4</comment_count>
      <attachid>329484</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-12-15 08:52:07 -0800</bug_when>
    <thetext>Comment on attachment 329484
Patch

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

I thought about recommending that we adjust the API for the possibility that, in the future, we might want to notify the UI process if other secondary processes terminate. The signal could be SECONDARY_PROCESS_TERMINATED or just PROCESS_TERMINATED instead of WEB_PROCESS_TERMINATED.

But I doubt we&apos;ll ever need to do that, and this seems clearer.

&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebView.h:191
&gt; + * @WEBKIT_WEB_PROCESS_CRAHED: the web process crashed.

CRASHED

&gt; Source/WebKit/UIProcess/API/wpe/WebKitWebView.h:166
&gt; +    WEBKIT_WEB_PROCESS_CRAHED,

Ditto.

&gt; Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:86
&gt; +    g_assert_cmpuint(reason, ==, WEBKIT_WEB_PROCESS_CRAHED);

You have to look after you Ctrl+V :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382477</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-12-16 03:25:17 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #3)
&gt; (In reply to Carlos Garcia Campos from comment #1)
&gt; &gt; WebKitWebProcessTerminationReason can be expanded to support
&gt; &gt; ExceededCPULimit if we enable that.
&gt; 
&gt; We should definitely enable that, too.

Yes, but maybe we a way to disable it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382478</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-12-16 03:26:12 -0800</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #4)
&gt; Comment on attachment 329484 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=329484&amp;action=review
&gt; 
&gt; I thought about recommending that we adjust the API for the possibility
&gt; that, in the future, we might want to notify the UI process if other
&gt; secondary processes terminate. The signal could be
&gt; SECONDARY_PROCESS_TERMINATED or just PROCESS_TERMINATED instead of
&gt; WEB_PROCESS_TERMINATED.

In the case of other secondary processes, for example the network process, the signal wouldn&apos;t belong to the web view, but to the web context.

&gt; But I doubt we&apos;ll ever need to do that, and this seems clearer.
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/gtk/WebKitWebView.h:191
&gt; &gt; + * @WEBKIT_WEB_PROCESS_CRAHED: the web process crashed.
&gt; 
&gt; CRASHED
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/wpe/WebKitWebView.h:166
&gt; &gt; +    WEBKIT_WEB_PROCESS_CRAHED,
&gt; 
&gt; Ditto.
&gt; 
&gt; &gt; Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:86
&gt; &gt; +    g_assert_cmpuint(reason, ==, WEBKIT_WEB_PROCESS_CRAHED);
&gt; 
&gt; You have to look after you Ctrl+V :P

Indeed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382729</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-12-18 00:55:24 -0800</bug_when>
    <thetext>Committed r226019: &lt;https://trac.webkit.org/changeset/226019&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329484</attachid>
            <date>2017-12-15 03:37:51 -0800</date>
            <delta_ts>2017-12-15 08:52:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-web-process-terminated.diff</filename>
            <type>text/plain</type>
            <size>13888</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMWU2NmE0MGRmYWUuLjc5MmYwYzA5MWQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI0IEBACisyMDE3LTEyLTE1ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlh
LmNvbT4KKworICAgICAgICBbR1RLXVtXUEVdIEFkZCBXZWJLaXRXZWJWaWV3Ojp3ZWItcHJvY2Vz
cy10ZXJtaW5hdGVkIHNpZ25hbCBhbmQgZGVwcmVjYXRlIHdlYi1wcm9jZXNzLWNyYXNoZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDg2MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE9uY2UgdGhlIG1l
bW9yeSBwcmVzc3VyZSB3ZWIgcHJvY2VzcyBtb25pdG9yIGlzIGVuYWJsZWQgaW4gYnVnICMxODA4
NjEgdGhlIHdlYiBwcm9jZXNzIGNhbiBiZSBraWxsZWQgZHVlIHRvCisgICAgICAgIG1lbW9yeSBs
aW1pdHMuIFdlIG5lZWQgdG8gZXhwb3NlIHRoZSByZWFzb24gb2YgdGhlIHdlYiBwcm9jZXNzIHRl
cm1pbmF0aW9uIHRvIGFsbG93IGFwcGxpY2F0aW9ucyBoYW5kbGUgdGhlCisgICAgICAgIG1lbW9y
eSBsaW1pdCBjYXNlLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdE5hdmln
YXRpb25DbGllbnQuY3BwOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJW
aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19jbGFzc19pbml0KToKKyAgICAgICAg
KHdlYmtpdFdlYlZpZXdXZWJQcm9jZXNzVGVybWluYXRlZCk6CisgICAgICAgICh3ZWJraXRXZWJW
aWV3V2ViUHJvY2Vzc0NyYXNoZWQpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Z2xpYi9XZWJLaXRXZWJWaWV3UHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFdlYlZpZXcuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9kb2NzL3dlYmtp
dDJndGstNC4wLXNlY3Rpb25zLnR4dDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3dwZS9XZWJL
aXRXZWJWaWV3Lmg6CisKIDIwMTctMTItMTUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNp
YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dQRV0gRW5hYmxlIFdlYlByb2Nlc3MgbWVt
b3J5IG1vbml0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGli
L1dlYktpdE5hdmlnYXRpb25DbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L2dsaWIvV2ViS2l0TmF2aWdhdGlvbkNsaWVudC5jcHAKaW5kZXggNmRjZDA2NGRmNjUuLmFlNmFk
MDdmOGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJL
aXROYXZpZ2F0aW9uQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Z2xpYi9XZWJLaXROYXZpZ2F0aW9uQ2xpZW50LmNwcApAQCAtMTA3LDkgKzEwNywxNyBAQCBwcml2
YXRlOgogCiAgICAgdm9pZCBwcm9jZXNzRGlkVGVybWluYXRlKFdlYlBhZ2VQcm94eSYsIFByb2Nl
c3NUZXJtaW5hdGlvblJlYXNvbiByZWFzb24pIG92ZXJyaWRlCiAgICAgewotICAgICAgICBpZiAo
cmVhc29uID09IFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6UmVxdWVzdGVkQnlDbGllbnQpCi0g
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIHdlYmtpdFdlYlZpZXdXZWJQcm9jZXNzQ3Jhc2hl
ZChtX3dlYlZpZXcpOworICAgICAgICBzd2l0Y2ggKHJlYXNvbikgeworICAgICAgICBjYXNlIFBy
b2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6Q3Jhc2g6CisgICAgICAgICAgICB3ZWJraXRXZWJWaWV3
V2ViUHJvY2Vzc1Rlcm1pbmF0ZWQobV93ZWJWaWV3LCBXRUJLSVRfV0VCX1BST0NFU1NfQ1JBSEVE
KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIFByb2Nlc3NUZXJtaW5hdGlvblJl
YXNvbjo6RXhjZWVkZWRNZW1vcnlMaW1pdDoKKyAgICAgICAgICAgIHdlYmtpdFdlYlZpZXdXZWJQ
cm9jZXNzVGVybWluYXRlZChtX3dlYlZpZXcsIFdFQktJVF9XRUJfUFJPQ0VTU19FWENFRURFRF9N
RU1PUllfTElNSVQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHJvY2Vzc1Rl
cm1pbmF0aW9uUmVhc29uOjpFeGNlZWRlZENQVUxpbWl0OgorICAgICAgICBjYXNlIFByb2Nlc3NU
ZXJtaW5hdGlvblJlYXNvbjo6UmVxdWVzdGVkQnlDbGllbnQ6CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgfQogICAgIH0KIAogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFj
dGlvbihXZWJQYWdlUHJveHkmLCBSZWY8QVBJOjpOYXZpZ2F0aW9uQWN0aW9uPiYmIG5hdmlnYXRp
b25BY3Rpb24sIFJlZjxXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHk+JiYgbGlzdGVuZXIsIEFQ
STo6T2JqZWN0KiAvKiB1c2VyRGF0YSAqLykgb3ZlcnJpZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggNmY5YWQyYTdlZTAu
LjQ5ZTRjNTUxNDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xp
Yi9XZWJLaXRXZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xp
Yi9XZWJLaXRXZWJWaWV3LmNwcApAQCAtMTQ1LDYgKzE0NSw3IEBAIGVudW0gewogICAgIElOU0VD
VVJFX0NPTlRFTlRfREVURUNURUQsCiAKICAgICBXRUJfUFJPQ0VTU19DUkFTSEVELAorICAgIFdF
Ql9QUk9DRVNTX1RFUk1JTkFURUQsCiAKICAgICBBVVRIRU5USUNBVEUsCiAKQEAgLTE4MDYsNiAr
MTgwNyw4IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19jbGFzc19pbml0KFdlYktpdFdl
YlZpZXdDbGFzcyogd2ViVmlld0NsYXNzKQogICAgICAqCiAgICAgICogUmV0dXJuczogJVRSVUUg
dG8gc3RvcCBvdGhlciBoYW5kbGVycyBmcm9tIGJlaW5nIGludm9rZWQgZm9yIHRoZSBldmVudC4K
ICAgICAgKiAgICAlRkFMU0UgdG8gcHJvcGFnYXRlIHRoZSBldmVudCBmdXJ0aGVyLgorICAgICAq
CisgICAgICogRGVwcmVjYXRlZDogMi4yMDogVXNlIFdlYktpdFdlYlZpZXc6OndlYi1wcm9jZXNz
LXRlcm1pbmF0ZWQgaW5zdGVhZC4KICAgICAgKi8KICAgICBzaWduYWxzW1dFQl9QUk9DRVNTX0NS
QVNIRURdID0gZ19zaWduYWxfbmV3KAogICAgICAgICAid2ViLXByb2Nlc3MtY3Jhc2hlZCIsCkBA
IC0xODE2LDYgKzE4MTksMjYgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X2NsYXNzX2lu
aXQoV2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xhc3MpCiAgICAgICAgIGdfY2Nsb3N1cmVf
bWFyc2hhbF9nZW5lcmljLAogICAgICAgICBHX1RZUEVfQk9PTEVBTiwgMCk7CiAKKyAgICAvKioK
KyAgICAgKiBXZWJLaXRXZWJWaWV3Ojp3ZWItcHJvY2Vzcy10ZXJtaW5hdGVkOgorICAgICAqIEB3
ZWJfdmlldzogdGhlICNXZWJLaXRXZWJWaWV3CisgICAgICogQHJlYXNvbjogdGhlIGEgI1dlYktp
dFdlYlByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbgorICAgICAqCisgICAgICogVGhpcyBzaWduYWwg
aXMgZW1pdHRlZCB3aGVuIHRoZSB3ZWIgcHJvY2VzcyB0ZXJtaW5hdGVzIGFibm9ybWFsbHkgZHVl
CisgICAgICogdG8gQHJlYXNvbi4KKyAgICAgKgorICAgICAqIFNpbmNlOiAyLjIwCisgICAgICov
CisgICAgc2lnbmFsc1tXRUJfUFJPQ0VTU19URVJNSU5BVEVEXSA9IGdfc2lnbmFsX25ldygKKyAg
ICAgICAgIndlYi1wcm9jZXNzLXRlcm1pbmF0ZWQiLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFT
Uyh3ZWJWaWV3Q2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgR19T
VFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgd2ViX3Byb2Nlc3NfdGVybWluYXRlZCks
CisgICAgICAgIDAsIDAsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9WT0lEX19FTlVNLAor
ICAgICAgICBHX1RZUEVfTk9ORSwgMSwKKyAgICAgICAgV0VCS0lUX1RZUEVfV0VCX1BST0NFU1Nf
VEVSTUlOQVRJT05fUkVBU09OKTsKKwogICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZpZXc6OmF1
dGhlbnRpY2F0ZToKICAgICAgKiBAd2ViX3ZpZXc6IHRoZSAjV2ViS2l0V2ViVmlldyBvbiB3aGlj
aCB0aGUgc2lnbmFsIGlzIGVtaXR0ZWQKQEAgLTM4MTgsMTAgKzM4NDEsMTMgQEAgY2Fpcm9fc3Vy
ZmFjZV90KiB3ZWJraXRfd2ViX3ZpZXdfZ2V0X3NuYXBzaG90X2ZpbmlzaChXZWJLaXRXZWJWaWV3
KiB3ZWJWaWV3LCBHQXMKIH0KICNlbmRpZgogCi12b2lkIHdlYmtpdFdlYlZpZXdXZWJQcm9jZXNz
Q3Jhc2hlZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQordm9pZCB3ZWJraXRXZWJWaWV3V2ViUHJv
Y2Vzc1Rlcm1pbmF0ZWQoV2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViS2l0V2ViUHJvY2Vzc1Rl
cm1pbmF0aW9uUmVhc29uIHJlYXNvbikKIHsKLSAgICBnYm9vbGVhbiByZXR1cm5WYWx1ZTsKLSAg
ICBnX3NpZ25hbF9lbWl0KHdlYlZpZXcsIHNpZ25hbHNbV0VCX1BST0NFU1NfQ1JBU0hFRF0sIDAs
ICZyZXR1cm5WYWx1ZSk7CisgICAgaWYgKHJlYXNvbiA9PSBXRUJLSVRfV0VCX1BST0NFU1NfQ1JB
SEVEKSB7CisgICAgICAgIGdib29sZWFuIHJldHVyblZhbHVlOworICAgICAgICBnX3NpZ25hbF9l
bWl0KHdlYlZpZXcsIHNpZ25hbHNbV0VCX1BST0NFU1NfQ1JBU0hFRF0sIDAsICZyZXR1cm5WYWx1
ZSk7CisgICAgfQorICAgIGdfc2lnbmFsX2VtaXQod2ViVmlldywgc2lnbmFsc1tXRUJfUFJPQ0VT
U19URVJNSU5BVEVEXSwgMCwgcmVhc29uKTsKIH0KIAogI2lmIFBMQVRGT1JNKEdUSykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYlZpZXdQcml2
YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJWaWV3UHJp
dmF0ZS5oCmluZGV4IDJkOWE2ZTUzY2NhLi4zNjA1YTkxNWVkNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViVmlld1ByaXZhdGUuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJWaWV3UHJpdmF0ZS5oCkBA
IC04MSw3ICs4MSw3IEBAIHZvaWQgd2Via2l0V2ViVmlld1N1Ym1pdEZvcm1SZXF1ZXN0KFdlYktp
dFdlYlZpZXcqLCBXZWJLaXRGb3JtU3VibWlzc2lvblJlcXVlc3QqCiB2b2lkIHdlYmtpdFdlYlZp
ZXdIYW5kbGVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJLaXRXZWJWaWV3KiwgV2ViS2l0OjpB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZVByb3h5Kik7CiB2b2lkIHdlYmtpdFdlYlZpZXdJbnNlY3Vy
ZUNvbnRlbnREZXRlY3RlZChXZWJLaXRXZWJWaWV3KiwgV2ViS2l0SW5zZWN1cmVDb250ZW50RXZl
bnQpOwogYm9vbCB3ZWJraXRXZWJWaWV3RW1pdFNob3dOb3RpZmljYXRpb24oV2ViS2l0V2ViVmll
dyosIFdlYktpdE5vdGlmaWNhdGlvbiopOwotdm9pZCB3ZWJraXRXZWJWaWV3V2ViUHJvY2Vzc0Ny
YXNoZWQoV2ViS2l0V2ViVmlldyopOwordm9pZCB3ZWJraXRXZWJWaWV3V2ViUHJvY2Vzc1Rlcm1p
bmF0ZWQoV2ViS2l0V2ViVmlldyosIFdlYktpdFdlYlByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbik7
CiB2b2lkIHdlYmtpdFdlYlZpZXdJc1BsYXlpbmdBdWRpb0NoYW5nZWQoV2ViS2l0V2ViVmlldyop
Owogdm9pZCB3ZWJraXRXZWJWaWV3U2VsZWN0aW9uRGlkQ2hhbmdlKFdlYktpdFdlYlZpZXcqKTsK
IHZvaWQgd2Via2l0V2ViVmlld1JlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyhXZWJL
aXRXZWJWaWV3KiwgV2ViS2l0OjpJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2luc1Blcm1pc3Npb25S
ZXF1ZXN0Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dl
YktpdFdlYlZpZXcuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5oCmluZGV4IDI2ZDIxZjA5YzZkLi45MjQ1NDQ3MjFmYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmgKQEAgLTE4Niw2ICsxODYsMjAg
QEAgdHlwZWRlZiBlbnVtIHsKICAgV0VCS0lUX1NOQVBTSE9UX1JFR0lPTl9GVUxMX0RPQ1VNRU5U
LAogfSBXZWJLaXRTbmFwc2hvdFJlZ2lvbjsKIAorLyoqCisgKiBXZWJLaXRXZWJQcm9jZXNzVGVy
bWluYXRpb25SZWFzb246CisgKiBAV0VCS0lUX1dFQl9QUk9DRVNTX0NSQUhFRDogdGhlIHdlYiBw
cm9jZXNzIGNyYXNoZWQuCisgKiBAV0VCS0lUX1dFQl9QUk9DRVNTX0VYQ0VFREVEX01FTU9SWV9M
SU1JVDogdGhlIHdlYiBwcm9jZXNzIGV4Y2VlZGVkIHRoZSBtZW1vcnkgbGltaXQuCisgKgorICog
RW51bSB2YWx1ZXMgdXNlZCB0byBzcGVjaWZ5IHRoZSByZWFzb24gd2h5IHRoZSB3ZWIgcHJvY2Vz
cyB0ZXJtaW5hdGVkIGFibm9ybWFsbHkuCisgKgorICogU2luY2U6IDIuMjAKKyAqLwordHlwZWRl
ZiBlbnVtIHsKKyAgICBXRUJLSVRfV0VCX1BST0NFU1NfQ1JBSEVELAorICAgIFdFQktJVF9XRUJf
UFJPQ0VTU19FWENFRURFRF9NRU1PUllfTElNSVQKK30gV2ViS2l0V2ViUHJvY2Vzc1Rlcm1pbmF0
aW9uUmVhc29uOworCiBzdHJ1Y3QgX1dlYktpdFdlYlZpZXcgewogICAgIFdlYktpdFdlYlZpZXdC
YXNlIHBhcmVudDsKIApAQCAtMjUzLDEwICsyNjcsMTEgQEAgc3RydWN0IF9XZWJLaXRXZWJWaWV3
Q2xhc3MgewogICAgIGdib29sZWFuICAgKCogc2hvd19vcHRpb25fbWVudSkgICAgICAgICAgICAo
V2ViS2l0V2ViVmlldyAgICAgICAgICAgICAgICp3ZWJfdmlldywKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdka1JlY3RhbmdsZSAgICAgICAgICAgICAg
ICAqcmVjdGFuZ2xlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgV2ViS2l0T3B0aW9uTWVudSAgICAgICAgICAgICptZW51KTsKKyAgICB2b2lkICAgICAg
ICgqIHdlYl9wcm9jZXNzX3Rlcm1pbmF0ZWQpICAgICAgKFdlYktpdFdlYlZpZXcgICAgICAgICAg
ICAgICAqd2ViX3ZpZXcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBXZWJLaXRXZWJQcm9jZXNzVGVybWluYXRpb25SZWFzb24gcmVhc29uKTsKIAogICAg
IHZvaWQgKCpfd2Via2l0X3Jlc2VydmVkMCkgKHZvaWQpOwogICAgIHZvaWQgKCpfd2Via2l0X3Jl
c2VydmVkMSkgKHZvaWQpOwotICAgIHZvaWQgKCpfd2Via2l0X3Jlc2VydmVkMikgKHZvaWQpOwog
fTsKIAogV0VCS0lUX0FQSSBHVHlwZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL2d0ay9kb2NzL3dlYmtpdDJndGstNC4wLXNlY3Rpb25zLnR4dCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvZG9jcy93ZWJraXQyZ3RrLTQuMC1zZWN0aW9ucy50eHQKaW5k
ZXggY2Q5NGQxMzM3YjEuLmU0NzcyNmUzNWE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvZ3RrL2RvY3Mvd2Via2l0Mmd0ay00LjAtc2VjdGlvbnMudHh0CisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvZG9jcy93ZWJraXQyZ3RrLTQuMC1zZWN0aW9u
cy50eHQKQEAgLTE0NSw2ICsxNDUsNyBAQCBXZWJLaXRTYXZlTW9kZQogV2ViS2l0SW5zZWN1cmVD
b250ZW50RXZlbnQKIFdlYktpdFNuYXBzaG90T3B0aW9ucwogV2ViS2l0U25hcHNob3RSZWdpb24K
K1dlYktpdFdlYlByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbgogCiA8U1VCU0VDVElPTiBFZGl0aW5n
IENvbW1hbmRzPgogV0VCS0lUX0VESVRJTkdfQ09NTUFORF9DVVQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS93cGUvV2ViS2l0V2ViVmlldy5oIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL3dwZS9XZWJLaXRXZWJWaWV3LmgKaW5kZXggZjk2ZjhmZTRhOTcuLmZk
YWYxMzAxYmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvd3BlL1dl
YktpdFdlYlZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvd3BlL1dlYktp
dFdlYlZpZXcuaApAQCAtMTUzLDYgKzE1MywyMCBAQCB0eXBlZGVmIGVudW0gewogICAgIFdFQktJ
VF9JTlNFQ1VSRV9DT05URU5UX0RJU1BMQVlFRAogfSBXZWJLaXRJbnNlY3VyZUNvbnRlbnRFdmVu
dDsKIAorLyoqCisgKiBXZWJLaXRXZWJQcm9jZXNzVGVybWluYXRpb25SZWFzb246CisgKiBAV0VC
S0lUX1dFQl9QUk9DRVNTX0NSQUhFRDogdGhlIHdlYiBwcm9jZXNzIGNyYXNoZWQuCisgKiBAV0VC
S0lUX1dFQl9QUk9DRVNTX0VYQ0VFREVEX01FTU9SWV9MSU1JVDogdGhlIHdlYiBwcm9jZXNzIGV4
Y2VlZGVkIHRoZSBtZW1vcnkgbGltaXQuCisgKgorICogRW51bSB2YWx1ZXMgdXNlZCB0byBzcGVj
aWZ5IHRoZSByZWFzb24gd2h5IHRoZSB3ZWIgcHJvY2VzcyB0ZXJtaW5hdGVkIGFibm9ybWFsbHku
CisgKgorICogU2luY2U6IDIuMjAKKyAqLwordHlwZWRlZiBlbnVtIHsKKyAgICBXRUJLSVRfV0VC
X1BST0NFU1NfQ1JBSEVELAorICAgIFdFQktJVF9XRUJfUFJPQ0VTU19FWENFRURFRF9NRU1PUllf
TElNSVQKK30gV2ViS2l0V2ViUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOworCiBzdHJ1Y3QgX1dl
YktpdFdlYlZpZXcgewogICAgIEdPYmplY3QgcGFyZW50OwogCkBAIC0yMTMsNiArMjI3LDggQEAg
c3RydWN0IF9XZWJLaXRXZWJWaWV3Q2xhc3MgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzICAgICAgICAgZXJy
b3JzKTsKICAgICBnYm9vbGVhbiAgICAgICAoKiBzaG93X25vdGlmaWNhdGlvbikgICAgICAgICAg
IChXZWJLaXRXZWJWaWV3ICAgICAgICAgICAgICAgKndlYl92aWV3LAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYktpdE5vdGlmaWNhdGlvbiAg
ICAgICAgICAqbm90aWZpY2F0aW9uKTsKKyAgICB2b2lkICAgICAgICAgICAoKiB3ZWJfcHJvY2Vz
c190ZXJtaW5hdGVkKSAgICAgIChXZWJLaXRXZWJWaWV3ICAgICAgICAgICAgICAgKndlYl92aWV3
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdl
YktpdFdlYlByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbiByZWFzb24pOwogCiAgICAgdm9pZCAoKl93
ZWJraXRfcmVzZXJ2ZWQwKSAodm9pZCk7CiAgICAgdm9pZCAoKl93ZWJraXRfcmVzZXJ2ZWQxKSAo
dm9pZCk7CkBAIC0yMjIsNyArMjM4LDYgQEAgc3RydWN0IF9XZWJLaXRXZWJWaWV3Q2xhc3Mgewog
ICAgIHZvaWQgKCpfd2Via2l0X3Jlc2VydmVkNSkgKHZvaWQpOwogICAgIHZvaWQgKCpfd2Via2l0
X3Jlc2VydmVkNikgKHZvaWQpOwogICAgIHZvaWQgKCpfd2Via2l0X3Jlc2VydmVkNykgKHZvaWQp
OwotICAgIHZvaWQgKCpfd2Via2l0X3Jlc2VydmVkOCkgKHZvaWQpOwogfTsKIAogV0VCS0lUX0FQ
SSBHVHlwZQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IDMxN2VmZWU0MWNkLi4yZmY3ZTJmNmZkZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE3LTEyLTE1ICBDYXJs
b3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtX
UEVdIEFkZCBXZWJLaXRXZWJWaWV3Ojp3ZWItcHJvY2Vzcy10ZXJtaW5hdGVkIHNpZ25hbCBhbmQg
ZGVwcmVjYXRlIHdlYi1wcm9jZXNzLWNyYXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDg2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVzZSBXZWJLaXRXZWJWaWV3Ojp3ZWItcHJvY2Vzcy10ZXJt
aW5hdGVkIGluc3RlYWQgb2Ygd2ViLXByb2Nlc3MtY3Jhc2hlZCBpbiB0ZXN0cy4gSSdtIG5vdCBh
ZGRpbmcgYSB0ZXN0IGZvcgorICAgICAgICBXRUJLSVRfV0VCX1BST0NFU1NfRVhDRUVERURfTUVN
T1JZX0xJTUlUIGJlY2F1c2Ugd2Ugd291bGQgbmVlZCB0byBhbGxvY2F0ZSBtb3JlIHRoYW4gMUdC
IGluIHRoZSB0ZXN0IGFuZCB3YWl0CisgICAgICAgIDMwIHNlY29uZHMsIGFuZCB3ZSBkb24ndCB3
YW50IHRvIGRvIGVpdGhlciBpbiB1bml0IHRlc3RzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJFeHRlbnNpb25zLmNwcDoKKyAgICAgICAgKHdlYlBy
b2Nlc3NUZXJtaW5hdGVkQ2FsbGJhY2spOgorICAgICAgICAodGVzdFdlYktpdFdlYlZpZXdQcm9j
ZXNzQ3Jhc2hlZCk6CisgICAgICAgICh3ZWJQcm9jZXNzQ3Jhc2hlZENhbGxiYWNrKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2dsaWIvV2ViS2l0R0xpYi9XZWJWaWV3VGVzdC5j
cHA6CisgICAgICAgIChXZWJWaWV3VGVzdDo6aW5pdGlhbGl6ZVdlYlZpZXcpOgorICAgICAgICAo
V2ViVmlld1Rlc3Q6OndlYlByb2Nlc3NUZXJtaW5hdGVkKToKKyAgICAgICAgKFdlYlZpZXdUZXN0
Ojp3ZWJQcm9jZXNzQ3Jhc2hlZCk6IERlbGV0ZWQuCisgICAgICAgICogVGVzdFdlYktpdEFQSS9n
bGliL1dlYktpdEdMaWIvV2ViVmlld1Rlc3QuaDoKKwogMjAxNy0xMi0xNCAgQ2FybG9zIEdhcmNp
YSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgV2ViRHJpdmVyOiBhZGQg
c3VwcG9ydCBmb3IgdGVzdCBleHBlY3RhdGlvbnMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViRXh0ZW5zaW9ucy5jcHAgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYkV4dGVuc2lvbnMuY3BwCmluZGV4IDcx
NDcxNGUxYTRiLi5iZWNiZWMyNmJlMyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJFeHRlbnNpb25zLmNwcAorKysgYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYkV4dGVuc2lvbnMuY3BwCkBAIC04MSw4ICs4
MSw5IEBAIHN0YXRpYyB2b2lkIHRlc3REb2N1bWVudExvYWRlZFNpZ25hbChXZWJWaWV3VGVzdCog
dGVzdCwgZ2NvbnN0cG9pbnRlcikKICAgICBnX2RidXNfY29ubmVjdGlvbl9zaWduYWxfdW5zdWJz
Y3JpYmUoY29ubmVjdGlvbiwgaWQpOwogfQogCi1zdGF0aWMgZ2Jvb2xlYW4gd2ViUHJvY2Vzc0Ny
YXNoZWRDYWxsYmFjayhXZWJLaXRXZWJWaWV3KiwgV2ViVmlld1Rlc3QqIHRlc3QpCitzdGF0aWMg
Z2Jvb2xlYW4gd2ViUHJvY2Vzc1Rlcm1pbmF0ZWRDYWxsYmFjayhXZWJLaXRXZWJWaWV3KiwgV2Vi
S2l0V2ViUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHJlYXNvbiwgV2ViVmlld1Rlc3QqIHRlc3Qp
CiB7CisgICAgZ19hc3NlcnRfY21wdWludChyZWFzb24sID09LCBXRUJLSVRfV0VCX1BST0NFU1Nf
Q1JBSEVEKTsKICAgICB0ZXN0LT5xdWl0TWFpbkxvb3AoKTsKIAogICAgIHJldHVybiBGQUxTRTsK
QEAgLTkzLDggKzk0LDggQEAgc3RhdGljIHZvaWQgdGVzdFdlYktpdFdlYlZpZXdQcm9jZXNzQ3Jh
c2hlZChXZWJWaWV3VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKICAgICB0ZXN0LT5sb2FkSHRt
bCgiPGh0bWw+PC9odG1sPiIsIDApOwogICAgIHRlc3QtPndhaXRVbnRpbExvYWRGaW5pc2hlZCgp
OwogCi0gICAgZ19zaWduYWxfY29ubmVjdF9hZnRlcih0ZXN0LT5tX3dlYlZpZXcsICJ3ZWItcHJv
Y2Vzcy1jcmFzaGVkIiwKLSAgICAgICAgR19DQUxMQkFDSyh3ZWJQcm9jZXNzQ3Jhc2hlZENhbGxi
YWNrKSwgdGVzdCk7CisgICAgZ19zaWduYWxfY29ubmVjdF9hZnRlcih0ZXN0LT5tX3dlYlZpZXcs
ICJ3ZWItcHJvY2Vzcy10ZXJtaW5hdGVkIiwKKyAgICAgICAgR19DQUxMQkFDSyh3ZWJQcm9jZXNz
VGVybWluYXRlZENhbGxiYWNrKSwgdGVzdCk7CiAKICAgICB0ZXN0LT5tX2V4cGVjdGVkV2ViUHJv
Y2Vzc0NyYXNoID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGli
L1dlYktpdEdMaWIvV2ViVmlld1Rlc3QuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGliL1dl
YktpdEdMaWIvV2ViVmlld1Rlc3QuY3BwCmluZGV4IGRlMjk2NDA5OGUzLi44NzgyM2ZhNzhiZSAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGliL1dlYktpdEdMaWIvV2ViVmlld1Rl
c3QuY3BwCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvZ2xpYi9XZWJLaXRHTGliL1dlYlZpZXdU
ZXN0LmNwcApAQCAtNTgsMTAgKzU4LDEwIEBAIHZvaWQgV2ViVmlld1Rlc3Q6OmluaXRpYWxpemVX
ZWJWaWV3KCkKICAgICBwbGF0Zm9ybUluaXRpYWxpemVXZWJWaWV3KCk7CiAgICAgYXNzZXJ0T2Jq
ZWN0SXNEZWxldGVkV2hlblRlc3RGaW5pc2hlcyhHX09CSkVDVChtX3dlYlZpZXcpKTsKIAotICAg
IGdfc2lnbmFsX2Nvbm5lY3QobV93ZWJWaWV3LCAid2ViLXByb2Nlc3MtY3Jhc2hlZCIsIEdfQ0FM
TEJBQ0soV2ViVmlld1Rlc3Q6OndlYlByb2Nlc3NDcmFzaGVkKSwgdGhpcyk7CisgICAgZ19zaWdu
YWxfY29ubmVjdChtX3dlYlZpZXcsICJ3ZWItcHJvY2Vzcy10ZXJtaW5hdGVkIiwgR19DQUxMQkFD
SyhXZWJWaWV3VGVzdDo6d2ViUHJvY2Vzc1Rlcm1pbmF0ZWQpLCB0aGlzKTsKIH0KIAotZ2Jvb2xl
YW4gV2ViVmlld1Rlc3Q6OndlYlByb2Nlc3NDcmFzaGVkKFdlYktpdFdlYlZpZXcqLCBXZWJWaWV3
VGVzdCogdGVzdCkKK2dib29sZWFuIFdlYlZpZXdUZXN0Ojp3ZWJQcm9jZXNzVGVybWluYXRlZChX
ZWJLaXRXZWJWaWV3KiwgV2ViS2l0V2ViUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uLCBXZWJWaWV3
VGVzdCogdGVzdCkKIHsKICAgICBpZiAodGVzdC0+bV9leHBlY3RlZFdlYlByb2Nlc3NDcmFzaCkg
ewogICAgICAgICB0ZXN0LT5tX2V4cGVjdGVkV2ViUHJvY2Vzc0NyYXNoID0gZmFsc2U7CmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL2dsaWIvV2ViS2l0R0xpYi9XZWJWaWV3VGVzdC5o
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9nbGliL1dlYktpdEdMaWIvV2ViVmlld1Rlc3QuaAppbmRl
eCAxMTRkMjgzNWQ0YS4uN2ZmNmIzMDI2MjggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvZ2xpYi9XZWJLaXRHTGliL1dlYlZpZXdUZXN0LmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9nbGliL1dlYktpdEdMaWIvV2ViVmlld1Rlc3QuaApAQCAtOTAsNyArOTAsNyBAQCBwdWJsaWM6
CiAgICAgLy8gaW4gb3VyIGNvbnN0cnVjdG9yLCBiZWZvcmUgYSBkZXJpdmVkIGNsYXNzJ3MgdnRh
YmxlIGlzIHJlYWR5LgogICAgIHZvaWQgaW5pdGlhbGl6ZVdlYkV4dGVuc2lvbnMoKSBmaW5hbCB7
IFRlc3Q6OmluaXRpYWxpemVXZWJFeHRlbnNpb25zKCk7IH0KIAotICAgIHN0YXRpYyBnYm9vbGVh
biB3ZWJQcm9jZXNzQ3Jhc2hlZChXZWJLaXRXZWJWaWV3KiwgV2ViVmlld1Rlc3QqKTsKKyAgICBz
dGF0aWMgZ2Jvb2xlYW4gd2ViUHJvY2Vzc1Rlcm1pbmF0ZWQoV2ViS2l0V2ViVmlldyosIFdlYktp
dFdlYlByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbiwgV2ViVmlld1Rlc3QqKTsKIAogICAgIEdSZWZQ
dHI8V2ViS2l0VXNlckNvbnRlbnRNYW5hZ2VyPiBtX3VzZXJDb250ZW50TWFuYWdlcjsKICAgICBX
ZWJLaXRXZWJWaWV3KiBtX3dlYlZpZXcgeyBudWxscHRyIH07Cg==
</data>
<flag name="review"
          id="348564"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>