<?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>220660</bug_id>
          
          <creation_ts>2021-01-15 09:58:34 -0800</creation_ts>
          <short_desc>PiP video subtitles stop updating when Safari is backgrounded</short_desc>
          <delta_ts>2021-01-21 22:11:49 -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>Media</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1719911</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-15 09:58:34 -0800</bug_when>
    <thetext>PiP video subtitles stop updating when Safari is backgrounded</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719912</commentid>
    <comment_count>1</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-15 09:59:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/70864713&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719918</commentid>
    <comment_count>2</comment_count>
      <attachid>417714</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-15 10:17:28 -0800</bug_when>
    <thetext>Created attachment 417714
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720068</commentid>
    <comment_count>3</comment_count>
      <attachid>417714</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-01-15 16:05:01 -0800</bug_when>
    <thetext>Comment on attachment 417714
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:219
&gt; +    return m_isRenderingSuspended &amp;&amp; !m_webPage.videoFullscreenManager().hasVideo();

This code is a little bit mysterious, not obvious. Hard to understand this is about PIP and why it’s correct. There’s not even a why comment!

And worse, we have no regression test for this, so someone could break it and commit the change without ever knowing it.

That’s bad combination: seems like we may be unable to keep this working and might make the same kind of mistake again in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720070</commentid>
    <comment_count>4</comment_count>
      <attachid>417746</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-15 16:18:55 -0800</bug_when>
    <thetext>Created attachment 417746
Only prevent suspending rendering when a video with visible text tracks is in PiP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720075</commentid>
    <comment_count>5</comment_count>
      <attachid>417714</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-15 16:29:37 -0800</bug_when>
    <thetext>Comment on attachment 417714
Patch

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

&gt;&gt; Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:219
&gt;&gt; +    return m_isRenderingSuspended &amp;&amp; !m_webPage.videoFullscreenManager().hasVideo();
&gt; 
&gt; This code is a little bit mysterious, not obvious. Hard to understand this is about PIP and why it’s correct. There’s not even a why comment!
&gt; 
&gt; And worse, we have no regression test for this, so someone could break it and commit the change without ever knowing it.
&gt; 
&gt; That’s bad combination: seems like we may be unable to keep this working and might make the same kind of mistake again in the future.

Sorry, I forgot to remove the &quot;r?&quot; flag when we are discussing the patch on slack. :-(

Agree! A regression test is needed. But the issue happens when the browser is in the background and a video with text tracks is playing in picture-in-picture. We are not able to test it on iOS before fixing bug 203724.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720776</commentid>
    <comment_count>6</comment_count>
      <attachid>417933</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-19 17:44:37 -0800</bug_when>
    <thetext>Created attachment 417933
Only unfreeze the layer tree when we need to update text track representation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721084</commentid>
    <comment_count>7</comment_count>
      <attachid>418017</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-20 20:17:06 -0800</bug_when>
    <thetext>Created attachment 418017
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721085</commentid>
    <comment_count>8</comment_count>
      <attachid>418018</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-20 20:24:33 -0800</bug_when>
    <thetext>Created attachment 418018
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721249</commentid>
    <comment_count>9</comment_count>
      <attachid>418018</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-01-21 11:19:13 -0800</bug_when>
    <thetext>Comment on attachment 418018
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/WebPage.cpp:2650
&gt; +    if (m_layerTreeFreezeReasons.hasExactlyOneBitSet() &amp;&amp; m_layerTreeFreezeReasons.contains(LayerTreeFreezeReason::BackgroundApplication) &amp;&amp; m_videoFullscreenManager &amp;&amp; m_videoFullscreenManager-&gt;videoInPictureInPicture()) {

Nit: `m_videoFullscreenManager` will be NULL most of the time, so you might want to check it first to short circuit the rest of the tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721272</commentid>
    <comment_count>10</comment_count>
      <attachid>418018</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-21 11:59:23 -0800</bug_when>
    <thetext>Comment on attachment 418018
Patch

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

&gt;&gt; Source/WebKit/WebProcess/WebPage/WebPage.cpp:2650
&gt;&gt; +    if (m_layerTreeFreezeReasons.hasExactlyOneBitSet() &amp;&amp; m_layerTreeFreezeReasons.contains(LayerTreeFreezeReason::BackgroundApplication) &amp;&amp; m_videoFullscreenManager &amp;&amp; m_videoFullscreenManager-&gt;videoInPictureInPicture()) {
&gt; 
&gt; Nit: `m_videoFullscreenManager` will be NULL most of the time, so you might want to check it first to short circuit the rest of the tests.

Good point! Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721383</commentid>
    <comment_count>11</comment_count>
      <attachid>418018</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-01-21 15:42:23 -0800</bug_when>
    <thetext>Comment on attachment 418018
Patch

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

&gt; Source/WebKit/ChangeLog:11
&gt; +        Subtitles in the picture-in-picture window will stop updating when the browser is
&gt; +        in the background because we freeze the layer tree when a browser is in the background.
&gt; +        This patch fixes this issue by avoiding freezing the layer tree if a video is playing
&gt; +        in picture-in-picture when the browser is in the background.

Can we construct a regression test?

&gt; Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.h:121
&gt; +    bool videoInPictureInPicture() const;

This sounds like a function that would return a &quot;video&quot;, not a function that would return a boolean answer to a question.

Given the comment you wrote above, it seems that this function’s name should be hasVideoPlayingInPictureInPicture().

&gt; Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.mm:274
&gt; +    if (mode == HTMLMediaElementEnums::VideoFullscreenModePictureInPicture)
&gt; +        m_videoElementInPictureInPicture = makeWeakPtr(videoElement);

Seems like an omission that if the mode is something else, we don’t null out m_videoElementInPictureInPicture. Do we have an iron clad guarantee it will be null in that case? Could we maybe just set to null? Or is there some chance that we can have a PiP lingering while we start some other full-screen, perhaps on a different element?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721469</commentid>
    <comment_count>12</comment_count>
      <attachid>418018</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-21 20:00:09 -0800</bug_when>
    <thetext>Comment on attachment 418018
Patch

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

&gt;&gt; Source/WebKit/ChangeLog:11
&gt;&gt; +        in picture-in-picture when the browser is in the background.
&gt; 
&gt; Can we construct a regression test?

I have to manually test this patch because we cannot automatically test picture-in-picture features on iOS now.
We plan to add regression tests for video fullscreen and picture-in-picture with the XCTest framework in WebKit.

&gt;&gt;&gt; Source/WebKit/WebProcess/WebPage/WebPage.cpp:2650
&gt;&gt;&gt; +    if (m_layerTreeFreezeReasons.hasExactlyOneBitSet() &amp;&amp; m_layerTreeFreezeReasons.contains(LayerTreeFreezeReason::BackgroundApplication) &amp;&amp; m_videoFullscreenManager &amp;&amp; m_videoFullscreenManager-&gt;videoInPictureInPicture()) {
&gt;&gt; 
&gt;&gt; Nit: `m_videoFullscreenManager` will be NULL most of the time, so you might want to check it first to short circuit the rest of the tests.
&gt; 
&gt; Good point! Thanks!

Fixed.

&gt;&gt; Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.h:121
&gt;&gt; +    bool videoInPictureInPicture() const;
&gt; 
&gt; This sounds like a function that would return a &quot;video&quot;, not a function that would return a boolean answer to a question.
&gt; 
&gt; Given the comment you wrote above, it seems that this function’s name should be hasVideoPlayingInPictureInPicture().

Agree! Fixed.

&gt;&gt; Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.mm:274
&gt;&gt; +        m_videoElementInPictureInPicture = makeWeakPtr(videoElement);
&gt; 
&gt; Seems like an omission that if the mode is something else, we don’t null out m_videoElementInPictureInPicture. Do we have an iron clad guarantee it will be null in that case? Could we maybe just set to null? Or is there some chance that we can have a PiP lingering while we start some other full-screen, perhaps on a different element?

The behavior is intended.

More than one video elements can be in fullscreen (sounds strange though), but only one video can be in picture-in-picture. And it is possible that one video is in picture-in-picture while another video is in fullscreen.

When a video is in picture-in-picture and another video tries to enter picture-in-picture, the current video in picture-in-picture will exit picture-in-picture while the new video enters picture-in-picture.

This patch works in those cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721470</commentid>
    <comment_count>13</comment_count>
      <attachid>418105</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-01-21 20:02:53 -0800</bug_when>
    <thetext>Created attachment 418105
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721488</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-21 22:11:27 -0800</bug_when>
    <thetext>Committed r271737: &lt;https://trac.webkit.org/changeset/271737&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 418105.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417714</attachid>
            <date>2021-01-15 10:17:28 -0800</date>
            <delta_ts>2021-01-15 16:18:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220660-20210115101727.patch</filename>
            <type>text/plain</type>
            <size>5215</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNTAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ2Y2Y0YjM2MjNmMzE0ZWEz
YTZiNzQ1YWE1ZjNlNGNiNjYwMmU5MWQuLjM4ZjgzOWU4ODczOTNmZWYzOTcxMzU4MjJlMzJjZWI2
NjExMzM1NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDEtMTUgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBQaVAgdmlkZW8gc3VidGl0bGVzIHN0
b3AgdXBkYXRpbmcgd2hlbiBTYWZhcmkgaXMgYmFja2dyb3VuZGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA2NjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPbiBpT1MsIHdlIHN1c3BlbmQgcmVuZGVy
aW5nIHdoZW4gYSBicm93c2VyIGlzIGluIHRoZSBiYWNrZ3JvdW5kLiBUaGUgc3VidGl0bGVzCisg
ICAgICAgIGluIHRoZSBwaWN0dXJlLWluLXBpY3R1cmUgd2luZG93IHdpbGwgc3RvcCByZW5kZXJp
bmcgYXMgd2VsbCBpbiB0aGlzIGNhc2UuCisgICAgICAgIFdpdGggdGhpcyBwYXRjaCwgYFJlbW90
ZUxheWVyVHJlZURyYXdpbmdBcmVhYCB3aWxsIGtlZXAgcmVuZGVyaW5nIGlmIGEgdmlkZW8gaXMK
KyAgICAgICAgaW4gcGljdHVyZS1pbi1waWN0dXJlIG5vIG1hdHRlciB0aGUgYnJvd3NlciBpcyBp
biB0aGUgYmFja2dyb3VuZCBvciBub3QuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
UmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmg6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5n
QXJlYS5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OnNl
dExheWVyVHJlZVN0YXRlSXNGcm96ZW4pOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRy
ZWVEcmF3aW5nQXJlYTo6bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbiBjb25zdCk6CisgICAgICAgIChX
ZWJLaXQ6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjpmb3JjZVJlcGFpbnQpOgorICAgICAg
ICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6dHJpZ2dlclJlbmRlcmluZ1Vw
ZGF0ZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjp1cGRh
dGVSZW5kZXJpbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpoYXNW
aWRlbyBjb25zdCk6CisKIDIwMjEtMDEtMTQgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNv
bT4KIAogICAgICAgICBBZGQgYSBxdWlyayB0byBkaXNhYmxlICJyZXR1cm4gdG8gZWxlbWVudCBm
dWxsc2NyZWVuIGZyb20gcGljdHVyZS1pbi1waWN0dXJlIiBmb3Igc29tZSBzaXRlcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1Jl
bW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaAppbmRleCAy
N2Y5MzZmMzE5MDRlMTU4MzQ2NDU0MWY1ZDA1YTkxMDMwYzIxMDc1Li5iMDEwNzQzN2EyNGRkYTUy
MWYwM2IxZjc1MzczY2VmMTQ2MWFiODZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUv
UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaApAQCAtODQsNyArODQsNyBAQCBwcml2YXRlOgog
ICAgIGJvb2wgdXNlc0RlbGVnYXRlZFBhZ2VTY2FsaW5nKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1
cm4gdHJ1ZTsgfQogCiAgICAgdm9pZCBzZXRMYXllclRyZWVTdGF0ZUlzRnJvemVuKGJvb2wpIG92
ZXJyaWRlOwotICAgIGJvb2wgbGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpIGNvbnN0IG92ZXJyaWRl
IHsgcmV0dXJuIG1faXNSZW5kZXJpbmdTdXNwZW5kZWQ7IH0KKyAgICBib29sIGxheWVyVHJlZVN0
YXRlSXNGcm96ZW4oKSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgZm9yY2VSZXBhaW50KCkg
b3ZlcnJpZGU7CiAgICAgdm9pZCBmb3JjZVJlcGFpbnRBc3luYyhXZWJQYWdlJiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5n
QXJlYS5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJl
ZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbQppbmRleCA1NWY1N2U2OTZmNzEzZjhmZDlj
ZGU0OWY1ZjFhMzg3MjQ5NjUwNjViLi5mMzRkODc2MzA5NzcwYzRlYjQyYjM5Nzk5MjI0N2VmYzU3
OTNjNTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1v
dGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEubW0KKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURy
YXdpbmdBcmVhLm1tCkBAIC0zNSw2ICszNSw3IEBACiAjaW1wb3J0ICJSZW1vdGVMYXllclRyZWVE
cmF3aW5nQXJlYVByb3h5TWVzc2FnZXMuaCIKICNpbXBvcnQgIlJlbW90ZVNjcm9sbGluZ0Nvb3Jk
aW5hdG9yLmgiCiAjaW1wb3J0ICJSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclRyYW5zYWN0aW9u
LmgiCisjaW1wb3J0ICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJQYWdl
LmgiCiAjaW1wb3J0ICJXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCiAjaW1wb3J0ICJXZWJQ
YWdlUHJveHlNZXNzYWdlcy5oIgpAQCAtMjA2LDE1ICsyMDcsMjQgQEAgdm9pZCBSZW1vdGVMYXll
clRyZWVEcmF3aW5nQXJlYTo6c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihib29sIGlzRnJvemVu
KQogCiAgICAgbV9pc1JlbmRlcmluZ1N1c3BlbmRlZCA9IGlzRnJvemVuOwogCi0gICAgaWYgKCFt
X2lzUmVuZGVyaW5nU3VzcGVuZGVkICYmIG1faGFzRGVmZXJyZWRSZW5kZXJpbmdVcGRhdGUpIHsK
KyAgICBpZiAoIWxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSAmJiBtX2hhc0RlZmVycmVkUmVuZGVy
aW5nVXBkYXRlKSB7CiAgICAgICAgIG1faGFzRGVmZXJyZWRSZW5kZXJpbmdVcGRhdGUgPSBmYWxz
ZTsKICAgICAgICAgc3RhcnRSZW5kZXJpbmdVcGRhdGVUaW1lcigpOwogICAgIH0KIH0KIAorYm9v
bCBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpIGNv
bnN0Cit7CisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHJldHVybiBt
X2lzUmVuZGVyaW5nU3VzcGVuZGVkICYmICFtX3dlYlBhZ2UudmlkZW9GdWxsc2NyZWVuTWFuYWdl
cigpLmhhc1ZpZGVvKCk7CisjZWxzZQorICAgIHJldHVybiBtX2lzUmVuZGVyaW5nU3VzcGVuZGVk
OworI2VuZGlmCit9CisKIHZvaWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmZvcmNlUmVw
YWludCgpCiB7Ci0gICAgaWYgKG1faXNSZW5kZXJpbmdTdXNwZW5kZWQpCisgICAgaWYgKGxheWVy
VHJlZVN0YXRlSXNGcm96ZW4oKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgZm9yIChGcmFtZSog
ZnJhbWUgPSAmbV93ZWJQYWdlLmNvcmVQYWdlKCktPm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUg
PSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CkBAIC0yODIsNyArMjkyLDcgQEAgdm9p
ZCBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6c3RhcnRSZW5kZXJpbmdVcGRhdGVUaW1lcigp
CiAKIHZvaWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OnRyaWdnZXJSZW5kZXJpbmdVcGRh
dGUoKQogewotICAgIGlmIChtX2lzUmVuZGVyaW5nU3VzcGVuZGVkKSB7CisgICAgaWYgKGxheWVy
VHJlZVN0YXRlSXNGcm96ZW4oKSkgewogICAgICAgICBtX2hhc0RlZmVycmVkUmVuZGVyaW5nVXBk
YXRlID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTMxNSw3ICszMjUsNyBAQCB2
b2lkIFJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjphZGRDb21taXRIYW5kbGVycygpCiAKIHZv
aWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OnVwZGF0ZVJlbmRlcmluZygpCiB7Ci0gICAg
aWYgKG1faXNSZW5kZXJpbmdTdXNwZW5kZWQpIHsKKyAgICBpZiAobGF5ZXJUcmVlU3RhdGVJc0Zy
b3plbigpKSB7CiAgICAgICAgIG1faGFzRGVmZXJyZWRSZW5kZXJpbmdVcGRhdGUgPSB0cnVlOwog
ICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5kZXggZDRkMTkyMzQ2MTY1MjBl
MGNhNDJlZGQ3YjEwYzZjZTI0Y2Q1NGMyOC4uNmY0ZTlmZmZhOWYzYzE0MDNhOWQ3OGE1MWIxYmU3
OTYwYTk4MzAwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCkBAIC0xMTcsNyArMTE3LDkgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgflZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKTsKICAgICAKICAgICB2b2lkIGlu
dmFsaWRhdGUoKTsKLSAgICAKKworICAgIGJvb2wgaGFzVmlkZW8oKSBjb25zdCB7IHJldHVybiAh
bV92aWRlb0VsZW1lbnRzLmlzRW1wdHkoKTsgfTsKKwogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3Nh
Z2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CiAKICAgICAvLyBJ
bnRlcmZhY2UgdG8gV2ViQ2hyb21lQ2xpZW50Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417746</attachid>
            <date>2021-01-15 16:18:55 -0800</date>
            <delta_ts>2021-01-20 20:17:01 -0800</delta_ts>
            <desc>Only prevent suspending rendering when a video with visible text tracks is in PiP</desc>
            <filename>bug-220660-20210115161854.patch</filename>
            <type>text/plain</type>
            <size>12090</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzJlY2E4ZjliMjQzZjM3
ZTZkZTdiNmVjNTUyYjM0OWNkOWM0NjFjNi4uOWRlY2U2YjEzYjUxYmRiYTcxYWUwY2UxZDZmZDNh
MGQ0ZmVkZWRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAxLTE1ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgUGlQIHZpZGVvIHN1YnRpdGxl
cyBzdG9wIHVwZGF0aW5nIHdoZW4gU2FmYXJpIGlzIGJhY2tncm91bmRlZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNjYwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5oOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudDo6aGFzVmlzaWJsZVRleHRUcmFjayBjb25zdCk6CisKIDIw
MjEtMDEtMTUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BV
UHJvY2Vzc10gSW1wcm92ZSB0aGUgR1BVUHJvY2VzcycgbWVtb3J5IHByZXNzdXJlIGhhbmRsZXIK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggYTlhZmI3MjE0MmU5ZmFmYzQ4MmFlNjg2YTg4YTFkOTM2MmU3YTRmZC4uY2Jh
M2MxNDA1MjdiOWFjYzNiMTM2MmRkZjk5MmVhYjE1Zjk4NmUzYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwzMCBAQAorMjAyMS0wMS0xNSAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29tPgorCisg
ICAgICAgIFBpUCB2aWRlbyBzdWJ0aXRsZXMgc3RvcCB1cGRhdGluZyB3aGVuIFNhZmFyaSBpcyBi
YWNrZ3JvdW5kZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMDY2MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIE9uIGlPUywgd2Ugc3VzcGVuZCByZW5kZXJpbmcgd2hlbiBhIGJyb3dzZXIgaXMgaW4gdGhl
IGJhY2tncm91bmQuIFRoZSBzdWJ0aXRsZXMKKyAgICAgICAgaW4gdGhlIHBpY3R1cmUtaW4tcGlj
dHVyZSB3aW5kb3cgd2lsbCBzdG9wIHJlbmRlcmluZyBhcyB3ZWxsIGluIHRoaXMgY2FzZS4KKyAg
ICAgICAgV2l0aCB0aGlzIHBhdGNoLCBgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFgIHdpbGwg
a2VlcCByZW5kZXJpbmcgaWYgYSB2aWRlbworICAgICAgICBoYXZpbmcgdmlzaWJsZSB0ZXh0IHRy
YWNrcyBpcyBpbiBwaWN0dXJlLWluLXBpY3R1cmUgbm8gbWF0dGVyIHRoZSBicm93c2VyCisgICAg
ICAgIGlzIGluIHRoZSBiYWNrZ3JvdW5kIG9yIG5vdC4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJl
ZURyYXdpbmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVEcmF3aW5n
QXJlYTo6c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbik6CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZUxheWVyVHJlZURyYXdpbmdBcmVhOjpsYXllclRyZWVTdGF0ZUlzRnJvemVuIGNvbnN0KToKKyAg
ICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmZvcmNlUmVwYWludCk6
CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjp0cmlnZ2VyUmVu
ZGVyaW5nVXBkYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0Fy
ZWE6OnVwZGF0ZVJlbmRlcmluZyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyLm1tOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
OjpoYXNWaXNpYmxlVGV4dFRyYWNrSW5QaWN0dXJlSW5QaWN0dXJlIGNvbnN0KToKKyAgICAgICAg
KFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JW
aWRlb0VsZW1lbnQpOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpl
eGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KToKKyAgICAgICAgKFdlYktpdDo6Vmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlblRvTW9kZVdpdGhvdXRBbmlt
YXRpb24pOgorCiAyMDIxLTAxLTE1ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0dQVVByb2Nlc3NdIEltcHJvdmUgdGhlIEdQVVByb2Nlc3MnIG1lbW9yeSBwcmVz
c3VyZSBoYW5kbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRl
eCA0NDExMmU2MmZmNjVhYWNmNjViZGNhMDhiZTdkNWI4OTRhN2QxZWE0Li5iYTI0OTgwNjU3ZDlm
Mjg1NDFjYzBlNzdkZjM5ZTI1MjMzNjY0N2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5jcHAKQEAgLTYzMjUsNyArNjMyNSw2IEBAIGJvb2wgSFRNTE1lZGlhRWxlbWVu
dDo6d2Via2l0Q2xvc2VkQ2FwdGlvbnNWaXNpYmxlKCkgY29uc3QKICAgICByZXR1cm4gbV93ZWJr
aXRMZWdhY3lDbG9zZWRDYXB0aW9uT3ZlcnJpZGUgJiYgbV9jbG9zZWRDYXB0aW9uc1Zpc2libGU7
CiB9CiAKLQogYm9vbCBIVE1MTWVkaWFFbGVtZW50Ojp3ZWJraXRIYXNDbG9zZWRDYXB0aW9ucygp
IGNvbnN0CiB7CiAgICAgcmV0dXJuIGhhc0Nsb3NlZENhcHRpb25zKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4IGRlOWQ1ZjgwN2UxOTk1YWNjZWI0NjQ0MTc5MjQz
MjU4YTVlYTRjZTEuLmU4MDExYzZlOGM3MWE0NDFjYzYzOGM0ZjZjNTE5MDg5NzRlODJmZGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCkBAIC00NDYsNiArNDQ2LDggQEAg
cHVibGljOgogICAgIGJvb2wgY2xvc2VkQ2FwdGlvbnNWaXNpYmxlKCkgY29uc3Qgb3ZlcnJpZGU7
CiAgICAgdm9pZCBzZXRDbG9zZWRDYXB0aW9uc1Zpc2libGUoYm9vbCkgb3ZlcnJpZGU7CiAKKyAg
ICBib29sIGhhc1Zpc2libGVUZXh0VHJhY2soKSBjb25zdCB7IHJldHVybiBtX2hhdmVWaXNpYmxl
VGV4dFRyYWNrOyB9CisKICAgICB2b2lkIHNvdXJjZVdhc1JlbW92ZWQoSFRNTFNvdXJjZUVsZW1l
bnQmKTsKICAgICB2b2lkIHNvdXJjZVdhc0FkZGVkKEhUTUxTb3VyY2VFbGVtZW50Jik7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJl
ZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgKaW5k
ZXggMjdmOTM2ZjMxOTA0ZTE1ODM0NjQ1NDFmNWQwNWE5MTAzMGMyMTA3NS4uYjAxMDc0MzdhMjRk
ZGE1MjFmMDNiMWY3NTM3M2NlZjE0NjFhYjg2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdB
cmVhLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJU
cmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHJpdmF0
ZToKICAgICBib29sIHVzZXNEZWxlZ2F0ZWRQYWdlU2NhbGluZygpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIHRydWU7IH0KIAogICAgIHZvaWQgc2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihib29s
KSBvdmVycmlkZTsKLSAgICBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBvdmVy
cmlkZSB7IHJldHVybiBtX2lzUmVuZGVyaW5nU3VzcGVuZGVkOyB9CisgICAgYm9vbCBsYXllclRy
ZWVTdGF0ZUlzRnJvemVuKCkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZvcmNlUmVwYWlu
dCgpIG92ZXJyaWRlOwogICAgIHZvaWQgZm9yY2VSZXBhaW50QXN5bmMoV2ViUGFnZSYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4mJikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJh
d2luZ0FyZWEubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXll
clRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEubW0KaW5kZXggNTVmNTdlNjk2ZjcxM2Y4
ZmQ5Y2RlNDlmNWYxYTM4NzI0OTY1MDY1Yi4uMzU1MWFkZDhlZDlhNGYyYjgxYTY4MTM3MWJhOTRj
MDkwOTYwNWIzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
UmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRy
ZWVEcmF3aW5nQXJlYS5tbQpAQCAtMzUsNiArMzUsNyBAQAogI2ltcG9ydCAiUmVtb3RlTGF5ZXJU
cmVlRHJhd2luZ0FyZWFQcm94eU1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJSZW1vdGVTY3JvbGxpbmdD
b29yZGluYXRvci5oIgogI2ltcG9ydCAiUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JUcmFuc2Fj
dGlvbi5oIgorI2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIgogI2ltcG9ydCAiV2Vi
UGFnZS5oIgogI2ltcG9ydCAiV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIgogI2ltcG9ydCAi
V2ViUGFnZVByb3h5TWVzc2FnZXMuaCIKQEAgLTIwNiwxNSArMjA3LDI2IEBAIHZvaWQgUmVtb3Rl
TGF5ZXJUcmVlRHJhd2luZ0FyZWE6OnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oYm9vbCBpc0Zy
b3plbikKIAogICAgIG1faXNSZW5kZXJpbmdTdXNwZW5kZWQgPSBpc0Zyb3plbjsKIAotICAgIGlm
ICghbV9pc1JlbmRlcmluZ1N1c3BlbmRlZCAmJiBtX2hhc0RlZmVycmVkUmVuZGVyaW5nVXBkYXRl
KSB7CisgICAgaWYgKCFsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkgJiYgbV9oYXNEZWZlcnJlZFJl
bmRlcmluZ1VwZGF0ZSkgewogICAgICAgICBtX2hhc0RlZmVycmVkUmVuZGVyaW5nVXBkYXRlID0g
ZmFsc2U7CiAgICAgICAgIHN0YXJ0UmVuZGVyaW5nVXBkYXRlVGltZXIoKTsKICAgICB9CiB9CiAK
K2Jvb2wgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmxheWVyVHJlZVN0YXRlSXNGcm96ZW4o
KSBjb25zdAoreworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICAvLyBX
ZSBzaG91bGQgbm90IHN1c3BlbmQgdGhlIHJlbmRlcmluZyBpZiBhIHZpZGVvIGhhdmluZyB2aXNp
YmxlIHRleHQgdHJhY2tzCisgICAgLy8gaXMgaW4gcGljdHVyZS1pbi1waWN0dXJlIG5vIG1hdHRl
ciB0aGUgYnJvd3NlciBpcyBpbiB0aGUgYmFja2dyb3VuZCBvciBub3QuCisgICAgcmV0dXJuIG1f
aXNSZW5kZXJpbmdTdXNwZW5kZWQgJiYgIW1fd2ViUGFnZS52aWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
KCkuaGFzVmlzaWJsZVRleHRUcmFja0luUGljdHVyZUluUGljdHVyZSgpOworI2Vsc2UKKyAgICBy
ZXR1cm4gbV9pc1JlbmRlcmluZ1N1c3BlbmRlZDsKKyNlbmRpZgorfQorCiB2b2lkIFJlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhOjpmb3JjZVJlcGFpbnQoKQogewotICAgIGlmIChtX2lzUmVuZGVy
aW5nU3VzcGVuZGVkKQorICAgIGlmIChsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkpCiAgICAgICAg
IHJldHVybjsKIAogICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fd2ViUGFnZS5jb3JlUGFnZSgp
LT5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQo
KSkgewpAQCAtMjgyLDcgKzI5NCw3IEBAIHZvaWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6
OnN0YXJ0UmVuZGVyaW5nVXBkYXRlVGltZXIoKQogCiB2b2lkIFJlbW90ZUxheWVyVHJlZURyYXdp
bmdBcmVhOjp0cmlnZ2VyUmVuZGVyaW5nVXBkYXRlKCkKIHsKLSAgICBpZiAobV9pc1JlbmRlcmlu
Z1N1c3BlbmRlZCkgeworICAgIGlmIChsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkpIHsKICAgICAg
ICAgbV9oYXNEZWZlcnJlZFJlbmRlcmluZ1VwZGF0ZSA9IHRydWU7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CkBAIC0zMTUsNyArMzI3LDcgQEAgdm9pZCBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJl
YTo6YWRkQ29tbWl0SGFuZGxlcnMoKQogCiB2b2lkIFJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVh
Ojp1cGRhdGVSZW5kZXJpbmcoKQogewotICAgIGlmIChtX2lzUmVuZGVyaW5nU3VzcGVuZGVkKSB7
CisgICAgaWYgKGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSkgewogICAgICAgICBtX2hhc0RlZmVy
cmVkUmVuZGVyaW5nVXBkYXRlID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFu
YWdlci5oCmluZGV4IGQ0ZDE5MjM0NjE2NTIwZTBjYTQyZWRkN2IxMGM2Y2UyNGNkNTRjMjguLjcw
ZWNiYTIwMDdjNzUxNmM1MjY4ZjAxYjA4YjU0YWNhMmJhZjJjMjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApA
QCAtMTE3LDcgKzExNyw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5WaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyKCk7CiAgICAgCiAgICAgdm9pZCBpbnZhbGlkYXRlKCk7Ci0gICAgCisKKyAgICBib29s
IGhhc1Zpc2libGVUZXh0VHJhY2tJblBpY3R1cmVJblBpY3R1cmUoKSBjb25zdDsKKwogICAgIHZv
aWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgb3Zl
cnJpZGU7CiAKICAgICAvLyBJbnRlcmZhY2UgdG8gV2ViQ2hyb21lQ2xpZW50CkBAIC0xNjksNiAr
MTcxLDcgQEAgcHJvdGVjdGVkOgogICAgIEhhc2hNYXA8UGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIsIE1vZGVsSW50ZXJmYWNlVHVwbGU+IG1fY29udGV4dE1hcDsKICAgICBQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBtX2NvbnRyb2xzTWFuYWdlckNvbnRleHRJZDsKICAg
ICBIYXNoTWFwPFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBpbnQ+IG1fY2xpZW50
Q291bnRzOworICAgIFdlYWtQdHI8V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudD4gbV92aWRlb0Vs
ZW1lbnRJblBpY3R1cmVJblBpY3R1cmU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXIubW0KaW5kZXggNGM3ZWEzYTdjOTg5ZWIwMjEyMTJmMDZlM2ZkM2M4NzFmZmRhM2I1
OS4uODgwNzcwMjNkYjI3ZWU3ZTYyZGM3ODkyYTFmYmFlNjZhZmI3YzIzMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0K
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIubW0KQEAgLTE0OCw2ICsxNDgsMTEgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpp
bnZhbGlkYXRlKCkKICAgICBtX3BhZ2UgPSBudWxscHRyOwogfQogCitib29sIFZpZGVvRnVsbHNj
cmVlbk1hbmFnZXI6Omhhc1Zpc2libGVUZXh0VHJhY2tJblBpY3R1cmVJblBpY3R1cmUoKSBjb25z
dAoreworICAgIHJldHVybiBtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSAmJiBtX3Zp
ZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZS0+aGFzVmlzaWJsZVRleHRUcmFjaygpOworfQor
CiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpNb2RlbEludGVyZmFjZVR1cGxlIFZpZGVvRnVsbHNj
cmVlbk1hbmFnZXI6OmNyZWF0ZU1vZGVsQW5kSW50ZXJmYWNlKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyIGNvbnRleHRJZCkKIHsKICAgICBhdXRvIG1vZGVsID0gVmlkZW9GdWxsc2Ny
ZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OmNyZWF0ZSgpOwpAQCAtMjY1LDYgKzI3MCw5IEBAIHZvaWQg
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoSFRNTFZpZGVvRWxlbWVuCiAgICAgZWxzZQogICAgICAgICBpbnRlcmZhY2UtPnNldFRhcmdl
dElzRnVsbHNjcmVlbihmYWxzZSk7CiAKKyAgICBpZiAobW9kZSAhPSBIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVQaWN0dXJlSW5QaWN0dXJlKQorICAgICAgICBtX3Zp
ZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSA9IG1ha2VXZWFrUHRyKHZpZGVvRWxlbWVudCk7
CisKICAgICBpbnRlcmZhY2UtPnNldEZ1bGxzY3JlZW5Nb2RlKG1vZGUpOwogICAgIGludGVyZmFj
ZS0+c2V0RnVsbHNjcmVlblN0YW5kYnkoc3RhbmRieSk7CiAgICAgbW9kZWwtPnNldFZpZGVvRWxl
bWVudCgmdmlkZW9FbGVtZW50KTsKQEAgLTI5NSw3ICszMDMsNyBAQCB2b2lkIFZpZGVvRnVsbHNj
cmVlbk1hbmFnZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KEhUTUxWaWRl
b0VsZW1lbgogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpTZXR1cEZ1bGxzY3JlZW5XaXRoSUQoY29udGV4dElkLCBpbnRlcmZhY2UtPmxheWVy
SG9zdGluZ0NvbnRleHQoKS0+Y29udGV4dElEKCksIHZpZGVvUmVjdCwgRmxvYXRTaXplKHZpZGVv
RWxlbWVudC52aWRlb1dpZHRoKCksIHZpZGVvRWxlbWVudC52aWRlb0hlaWdodCgpKSwgbV9wYWdl
LT5kZXZpY2VTY2FsZUZhY3RvcigpLCBpbnRlcmZhY2UtPmZ1bGxzY3JlZW5Nb2RlKCksIGFsbG93
c1BpY3R1cmVJblBpY3R1cmUsIHN0YW5kYnksIHZpZGVvRWxlbWVudC5kb2N1bWVudCgpLnF1aXJr
cygpLmJsb2Nrc1JldHVyblRvRnVsbHNjcmVlbkZyb21QaWN0dXJlSW5QaWN0dXJlUXVpcmsoKSkp
OwogfQogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50
KEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBMT0coRnVsbHNjcmVlbiwgIlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoJXAp
IiwgdGhpcyk7CiAgICAgQVNTRVJUKG1fcGFnZSk7CkBAIC0zMDgsMTIgKzMxNiwxNSBAQCB2b2lk
IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoV2ViQ29yZTo6SFRNTFZpZAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbV9wYWdl
LT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94
eTo6RXhpdEZ1bGxzY3JlZW4oY29udGV4dElkLCBpbmxpbmVWaWRlb0ZyYW1lKHZpZGVvRWxlbWVu
dCkpLCBbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhpcyksIHRoaXMsIGNvbnRleHRJZCwg
Y29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byBzdWNj
ZXNzKSBtdXRhYmxlIHsKKyAgICBtX3BhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpFeGl0RnVsbHNjcmVlbihjb250ZXh0SWQsIGlu
bGluZVZpZGVvRnJhbWUodmlkZW9FbGVtZW50KSksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0
cih0aGlzKSwgdGhpcywgY29udGV4dElkLCB2aWRlb0VsZW1lbnRQdHIgPSAmdmlkZW9FbGVtZW50
LCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHN1
Y2Nlc3MpIG11dGFibGUgewogICAgICAgICBpZiAoIXN1Y2Nlc3MpIHsKICAgICAgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQog
CisgICAgICAgIGlmIChtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSA9PSB2aWRlb0Vs
ZW1lbnRQdHIpCisgICAgICAgICAgICBtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSA9
IG51bGxwdHI7CisKICAgICAgICAgYXV0byYgaW50ZXJmYWNlID0gZW5zdXJlSW50ZXJmYWNlKGNv
bnRleHRJZCk7CiAgICAgICAgIGludGVyZmFjZS5zZXRUYXJnZXRJc0Z1bGxzY3JlZW4oZmFsc2Up
OwogICAgICAgICBpbnRlcmZhY2Uuc2V0QW5pbWF0aW9uU3RhdGUoVmlkZW9GdWxsc2NyZWVuSW50
ZXJmYWNlQ29udGV4dDo6QW5pbWF0aW9uVHlwZTo6RnJvbUZ1bGxzY3JlZW4pOwpAQCAtMzIxLDEz
ICszMzIsMTYgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2Ny
ZWVuRm9yVmlkZW9FbGVtZW50KFdlYkNvcmU6OkhUTUxWaWQKICAgICB9KTsKIH0KIAotdm9pZCBW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFu
aW1hdGlvbihXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB0YXJnZXRNb2RlKQor
dm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0
aG91dEFuaW1hdGlvbihIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB0YXJnZXRNb2RlKQogewog
ICAgIExPRyhGdWxsc2NyZWVuLCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVs
bHNjcmVlblRvTW9kZVdpdGhvdXRBbmltYXRpb24oJXApIiwgdGhpcyk7CiAKICAgICBBU1NFUlQo
bV9wYWdlKTsKICAgICBBU1NFUlQobV92aWRlb0VsZW1lbnRzLmNvbnRhaW5zKCZ2aWRlb0VsZW1l
bnQpKTsKIAorICAgIGlmIChtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSA9PSAmdmlk
ZW9FbGVtZW50KQorICAgICAgICBtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSA9IG51
bGxwdHI7CisKICAgICBhdXRvIGNvbnRleHRJZCA9IG1fdmlkZW9FbGVtZW50cy5nZXQoJnZpZGVv
RWxlbWVudCk7CiAgICAgYXV0byYgaW50ZXJmYWNlID0gZW5zdXJlSW50ZXJmYWNlKGNvbnRleHRJ
ZCk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417933</attachid>
            <date>2021-01-19 17:44:37 -0800</date>
            <delta_ts>2021-01-20 20:17:03 -0800</delta_ts>
            <desc>Only unfreeze the layer tree when we need to update text track representation</desc>
            <filename>bug-220660-20210119174436.patch</filename>
            <type>text/plain</type>
            <size>15458</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNjI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWQwNWRkNDI3ODUyNDNj
ZTUyZGE4ZjAzMDFlNWYyNGVkN2RkMTc4NC4uYjJiYzU5YTA5NzkzZGE1YjAzNmMzNThlODRjMmRi
ZDY5ODBiODMwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIxLTAxLTE5ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgUGlQIHZpZGVvIHN1YnRpdGxl
cyBzdG9wIHVwZGF0aW5nIHdoZW4gU2FmYXJpIGlzIGJhY2tncm91bmRlZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNjYwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJv
bHMvTWVkaWFDb250cm9sc0hvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
c0hvc3Q6Om5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXByZXNlbnRhdGlvbiBjb25zdCk6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0Lmg6CisgICAgICAg
ICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRp
YUVsZW1lbnQ6Om5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXByZXNlbnRhdGlvbiBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojp1cGRhdGVUZXh0VHJhY2tSZXByZXNl
bnRhdGlvbkltYWdlSWZOZWVkZWQpOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5o
OgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQuaDoKKwogMjAyMS0wMS0xOSAgUGF0cmljayBBbmdsZSAgPHBhbmdsZUBhcHBsZS5jb20+
CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogRm9udCBEZXRhaWxzIHNpZGViYXIgLSBGcmFjdGlv
bmFsIHZhcmlhdGlvbiBheGlzIHJhbmdlcy9kZWZhdWx0IHZhbHVlcyBhcmUgcm91bmRlZC4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cKaW5kZXggZTA4NzhiODZjNDk2YWUzMjVlYmI1MTZjZTJjYzYyNzUwNzhhNDI4YS4uZjc4Mjg5
YzZhMGIzNzViY2JjMTFhYzQyOTJlZDI0NGFhZTI1N2Q1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwz
MCBAQAorMjAyMS0wMS0xOSAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29tPgorCisgICAg
ICAgIFBpUCB2aWRlbyBzdWJ0aXRsZXMgc3RvcCB1cGRhdGluZyB3aGVuIFNhZmFyaSBpcyBiYWNr
Z3JvdW5kZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMDY2MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE9uIGlPUywgd2Ugc3VzcGVuZCByZW5kZXJpbmcgd2hlbiBhIGJyb3dzZXIgaXMgaW4gdGhlIGJh
Y2tncm91bmQuIFRoZSBzdWJ0aXRsZXMKKyAgICAgICAgaW4gdGhlIHBpY3R1cmUtaW4tcGljdHVy
ZSB3aW5kb3cgd2lsbCBzdG9wIHJlbmRlcmluZyBhcyB3ZWxsIGluIHRoaXMgY2FzZS4KKyAgICAg
ICAgV2l0aCB0aGlzIHBhdGNoLCBgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFgIHdpbGwga2Vl
cCByZW5kZXJpbmcgaWYgYSB2aWRlbworICAgICAgICBpbiBwaWN0dXJlLWluLXBpY3R1cmUgbmVl
ZHMgdG8gdXBkYXRlIGl0cyB0ZXh0IHRyYWNrIHJlcHJlc2VudGF0aW9uIGV2ZW4gd2hlbgorICAg
ICAgICB0aGUgYnJvd3NlciBpcyBpbiB0aGUgYmFja2dyb3VuZC4KKworICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEu
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVMYXllclRyZWVE
cmF3aW5nQXJlYTo6c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbik6CisgICAgICAgIChXZWJLaXQ6
OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjpsYXllclRyZWVTdGF0ZUlzRnJvemVuIGNvbnN0
KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OmZvcmNlUmVw
YWludCk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhOjp0cmln
Z2VyUmVuZGVyaW5nVXBkYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJh
d2luZ0FyZWE6OnVwZGF0ZVJlbmRlcmluZyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLm1tOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyOjp2aWRlb0luUGljdHVyZUluUGljdHVyZU5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXBy
ZXNlbnRhdGlvbiBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXI6OmVudGVyVmlkZW9GdWxsc2NyZWVuRm9yVmlkZW9FbGVtZW50KToKKyAgICAgICAgKFdlYktp
dDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxl
bWVudCk6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRl
b0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKToKKwogMjAyMS0wMS0xOSAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFVQcm9jZXNzXSBDbGFpbSBv
d25lcnNoaXAgb2YgQ2FudmFzIElPU3VyZmFjZSBiYWNraW5nIGluIHRoZSBXZWJQcm9jZXNzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250
cm9sc0hvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlh
Q29udHJvbHNIb3N0LmNwcAppbmRleCBlMzg3ZWVmODJkYWZlMDI3MjJhMDY0ZjMzNmEwMGJhMGFh
NTdkYWQyLi43N2Y1MTZhZjRmMGE5NTUyMmQxNTQ0ZTFmZDJmNWM2NTI4MDZiZmUwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hv
c3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5jcHAKQEAgLTE3MSw2ICsxNzEsMTQgQEAgdm9pZCBNZWRpYUNvbnRyb2xzSG9z
dDo6dXBkYXRlVGV4dFRyYWNrQ29udGFpbmVyKCkKICAgICAgICAgbV90ZXh0VHJhY2tDb250YWlu
ZXItPnVwZGF0ZURpc3BsYXkoKTsKIH0KIAorYm9vbCBNZWRpYUNvbnRyb2xzSG9zdDo6bmVlZHNH
ZW5lcmF0ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fdGV4
dFRyYWNrQ29udGFpbmVyKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gbV90
ZXh0VHJhY2tDb250YWluZXItPm5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXByZXNlbnRhdGlvbigp
OworfQorCiB2b2lkIE1lZGlhQ29udHJvbHNIb3N0Ojp1cGRhdGVUZXh0VHJhY2tSZXByZXNlbnRh
dGlvbkltYWdlSWZOZWVkZWQoKQogewogICAgIGlmIChtX3RleHRUcmFja0NvbnRhaW5lcikKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRy
b2xzSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29u
dHJvbHNIb3N0LmgKaW5kZXggNmU4NDVmN2E3YzViMGQ5YmI0YzIxNWNiY2UyODBlZGZlNWVlMzNi
OC4uY2U2NjVhZDkyN2EwNWFiMWEyNjYxOTJkMTI0OTFjNjAyZGJhNjMyMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNI
b3N0LmgKQEAgLTcwLDYgKzcwLDcgQEAgcHVibGljOgogCiAgICAgZW51bSBjbGFzcyBGb3JjZVVw
ZGF0ZSB7IFllcywgTm8gfTsKICAgICB2b2lkIHVwZGF0ZUNhcHRpb25EaXNwbGF5U2l6ZXMoRm9y
Y2VVcGRhdGUgPSBGb3JjZVVwZGF0ZTo6Tm8pOworICAgIGJvb2wgbmVlZHNHZW5lcmF0ZVRleHRU
cmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3Q7CiAgICAgdm9pZCB1cGRhdGVUZXh0VHJhY2tSZXBy
ZXNlbnRhdGlvbkltYWdlSWZOZWVkZWQoKTsKICAgICB2b2lkIGVudGVyZWRGdWxsc2NyZWVuKCk7
CiAgICAgdm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcAppbmRleCBiNGUzOGQxZjQyODhlOWI3NjYwNDg1ZGFjMzZjYmVkNWE0Y2I1
NzQ4Li4wZDQyYmU2MGMxMDc1NDNkYzMxYTk2NDZhYTk3MjdjZDBjODhjNDcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTYyOTksMTEgKzYyOTksMTkgQEAg
dm9pZCBIVE1MTWVkaWFFbGVtZW50Ojp1cGRhdGVUZXh0VHJhY2tEaXNwbGF5KCkKICAgICBtX21l
ZGlhQ29udHJvbHNIb3N0LT51cGRhdGVUZXh0VHJhY2tDb250YWluZXIoKTsKIH0KIAorYm9vbCBI
VE1MTWVkaWFFbGVtZW50OjpuZWVkc0dlbmVyYXRlVGV4dFRyYWNrUmVwcmVzZW50YXRpb24oKSBj
b25zdAoreworICAgIGlmICghbV9tZWRpYUNvbnRyb2xzSG9zdCkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgcmV0dXJuIG1fbWVkaWFDb250cm9sc0hvc3QtPm5lZWRzR2VuZXJhdGVUZXh0
VHJhY2tSZXByZXNlbnRhdGlvbigpOworfQorCiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnVwZGF0
ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uSW1hZ2VJZk5lZWRlZCgpCiB7Ci0gICAgZW5zdXJlTWVk
aWFDb250cm9sc1NoYWRvd1Jvb3QoKTsKICAgICBpZiAoIW1fbWVkaWFDb250cm9sc0hvc3QpCi0g
ICAgICAgIG1fbWVkaWFDb250cm9sc0hvc3QgPSBNZWRpYUNvbnRyb2xzSG9zdDo6Y3JlYXRlKCp0
aGlzKTsKKyAgICAgICAgcmV0dXJuOworCiAgICAgbV9tZWRpYUNvbnRyb2xzSG9zdC0+dXBkYXRl
VGV4dFRyYWNrUmVwcmVzZW50YXRpb25JbWFnZUlmTmVlZGVkKCk7CiB9CiAKQEAgLTYzMzQsNyAr
NjM0Miw2IEBAIGJvb2wgSFRNTE1lZGlhRWxlbWVudDo6d2Via2l0Q2xvc2VkQ2FwdGlvbnNWaXNp
YmxlKCkgY29uc3QKICAgICByZXR1cm4gbV93ZWJraXRMZWdhY3lDbG9zZWRDYXB0aW9uT3ZlcnJp
ZGUgJiYgbV9jbG9zZWRDYXB0aW9uc1Zpc2libGU7CiB9CiAKLQogYm9vbCBIVE1MTWVkaWFFbGVt
ZW50Ojp3ZWJraXRIYXNDbG9zZWRDYXB0aW9ucygpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGhhc0Ns
b3NlZENhcHRpb25zKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCmluZGV4
IGRlOWQ1ZjgwN2UxOTk1YWNjZWI0NjQ0MTc5MjQzMjU4YTVlYTRjZTEuLjliYTk4YWE0OTk5OGI2
YTA2YjY2ZTAwMDhmNzZlMzdkNjU3NDMxZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5oCkBAIC0zOTcsNiArMzk3LDcgQEAgcHVibGljOgogICAgIHZvaWQgY2FwdGlvblBy
ZWZlcmVuY2VzQ2hhbmdlZCgpOwogICAgIHVzaW5nIEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VGV4
dFRyYWNrVmlzaWJpbGl0eUNoZWNrVHlwZTsKICAgICB2b2lkIHRleHRUcmFja1JlYWR5U3RhdGVD
aGFuZ2VkKFRleHRUcmFjayopOworICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbmVlZHNHZW5lcmF0
ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uKCkgY29uc3Q7CiAgICAgdm9pZCB1cGRhdGVUZXh0VHJh
Y2tSZXByZXNlbnRhdGlvbkltYWdlSWZOZWVkZWQoKTsKIAogI2lmIEVOQUJMRShXSVJFTEVTU19Q
TEFZQkFDS19UQVJHRVQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9N
ZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50LmgKaW5kZXgg
NTdlM2JlZmUyNzg4OTc2YjhmOWFlNzllODIzNTU1MDAzMjYyZjEyOS4uNjZlZGU4MjBjNGQxYzE3
NzFiYWNlNjY2OWRkOWQyYTQwMTExMDczNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVs
ZW1lbnQuaApAQCAtNTgsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVTaXplcyhG
b3JjZVVwZGF0ZSBmb3JjZSA9IEZvcmNlVXBkYXRlOjpObyk7CiAgICAgdm9pZCB1cGRhdGVEaXNw
bGF5KCk7CiAKKyAgICBib29sIG5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXByZXNlbnRhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fbmVlZHNHZW5lcmF0ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uOyB9
CiAgICAgdm9pZCB1cGRhdGVUZXh0VHJhY2tSZXByZXNlbnRhdGlvbkltYWdlSWZOZWVkZWQoKTsK
IAogICAgIHZvaWQgZW50ZXJlZEZ1bGxzY3JlZW4oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3
aW5nQXJlYS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJU
cmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgKaW5kZXggMjdmOTM2ZjMxOTA0ZTE1ODM0
NjQ1NDFmNWQwNWE5MTAzMGMyMTA3NS4uYjAxMDc0MzdhMjRkZGE1MjFmMDNiMWY3NTM3M2NlZjE0
NjFhYjg2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVt
b3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZUxheWVyVHJlZURy
YXdpbmdBcmVhLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIHVzZXNEZWxl
Z2F0ZWRQYWdlU2NhbGluZygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIHRydWU7IH0KIAogICAg
IHZvaWQgc2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihib29sKSBvdmVycmlkZTsKLSAgICBib29s
IGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX2lzUmVu
ZGVyaW5nU3VzcGVuZGVkOyB9CisgICAgYm9vbCBsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkgY29u
c3Qgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZvcmNlUmVwYWludCgpIG92ZXJyaWRlOwogICAgIHZv
aWQgZm9yY2VSZXBhaW50QXN5bmMoV2ViUGFnZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
Jikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEubW0gYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlTGF5ZXJUcmVl
RHJhd2luZ0FyZWEubW0KaW5kZXggNTVmNTdlNjk2ZjcxM2Y4ZmQ5Y2RlNDlmNWYxYTM4NzI0OTY1
MDY1Yi4uMTBmYWUxOTYyMDcxNzNjNGUwZWNlN2VhN2JmYzQ2Nzc1MWFiOWE5NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90
ZUxheWVyVHJlZURyYXdpbmdBcmVhLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbQpAQCAt
MzUsNiArMzUsNyBAQAogI2ltcG9ydCAiUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eU1l
c3NhZ2VzLmgiCiAjaW1wb3J0ICJSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5oIgogI2ltcG9y
dCAiUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JUcmFuc2FjdGlvbi5oIgorI2ltcG9ydCAiVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5oIgogI2ltcG9ydCAiV2ViUGFnZS5oIgogI2ltcG9ydCAiV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIgogI2ltcG9ydCAiV2ViUGFnZVByb3h5TWVzc2FnZXMu
aCIKQEAgLTIwNiwxNSArMjA3LDI2IEBAIHZvaWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6
OnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oYm9vbCBpc0Zyb3plbikKIAogICAgIG1faXNSZW5k
ZXJpbmdTdXNwZW5kZWQgPSBpc0Zyb3plbjsKIAotICAgIGlmICghbV9pc1JlbmRlcmluZ1N1c3Bl
bmRlZCAmJiBtX2hhc0RlZmVycmVkUmVuZGVyaW5nVXBkYXRlKSB7CisgICAgaWYgKCFsYXllclRy
ZWVTdGF0ZUlzRnJvemVuKCkgJiYgbV9oYXNEZWZlcnJlZFJlbmRlcmluZ1VwZGF0ZSkgewogICAg
ICAgICBtX2hhc0RlZmVycmVkUmVuZGVyaW5nVXBkYXRlID0gZmFsc2U7CiAgICAgICAgIHN0YXJ0
UmVuZGVyaW5nVXBkYXRlVGltZXIoKTsKICAgICB9CiB9CiAKK2Jvb2wgUmVtb3RlTGF5ZXJUcmVl
RHJhd2luZ0FyZWE6OmxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25zdAoreworI2lmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICAvLyBXZSBzaG91bGQgbm90IHN1c3BlbmQg
cmVuZGVyaW5nIHdoZW4gdGhlIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQKKyAgICAvLyBp
ZiBhIHZpZGVvIGluIHBpY3R1cmUtaW4tcGljdHVyZSBuZWVkcyB0byB1cGRhdGUgaXRzIHRleHQg
dHJhY2sgcmVwcmVzZW50YXRpb24uCisgICAgcmV0dXJuIG1faXNSZW5kZXJpbmdTdXNwZW5kZWQg
JiYgIW1fd2ViUGFnZS52aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkudmlkZW9JblBpY3R1cmVJblBp
Y3R1cmVOZWVkc0dlbmVyYXRlVGV4dFRyYWNrUmVwcmVzZW50YXRpb24oKTsKKyNlbHNlCisgICAg
cmV0dXJuIG1faXNSZW5kZXJpbmdTdXNwZW5kZWQ7CisjZW5kaWYKK30KKwogdm9pZCBSZW1vdGVM
YXllclRyZWVEcmF3aW5nQXJlYTo6Zm9yY2VSZXBhaW50KCkKIHsKLSAgICBpZiAobV9pc1JlbmRl
cmluZ1N1c3BlbmRlZCkKKyAgICBpZiAobGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpKQogICAgICAg
ICByZXR1cm47CiAKICAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtX3dlYlBhZ2UuY29yZVBhZ2Uo
KS0+bWFpbkZyYW1lKCk7IGZyYW1lOyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0
KCkpIHsKQEAgLTI4Miw3ICsyOTQsNyBAQCB2b2lkIFJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVh
OjpzdGFydFJlbmRlcmluZ1VwZGF0ZVRpbWVyKCkKIAogdm9pZCBSZW1vdGVMYXllclRyZWVEcmF3
aW5nQXJlYTo6dHJpZ2dlclJlbmRlcmluZ1VwZGF0ZSgpCiB7Ci0gICAgaWYgKG1faXNSZW5kZXJp
bmdTdXNwZW5kZWQpIHsKKyAgICBpZiAobGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpKSB7CiAgICAg
ICAgIG1faGFzRGVmZXJyZWRSZW5kZXJpbmdVcGRhdGUgPSB0cnVlOwogICAgICAgICByZXR1cm47
CiAgICAgfQpAQCAtMzE1LDcgKzMyNyw3IEBAIHZvaWQgUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0Fy
ZWE6OmFkZENvbW1pdEhhbmRsZXJzKCkKIAogdm9pZCBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJl
YTo6dXBkYXRlUmVuZGVyaW5nKCkKIHsKLSAgICBpZiAobV9pc1JlbmRlcmluZ1N1c3BlbmRlZCkg
eworICAgIGlmIChsYXllclRyZWVTdGF0ZUlzRnJvemVuKCkpIHsKICAgICAgICAgbV9oYXNEZWZl
cnJlZFJlbmRlcmluZ1VwZGF0ZSA9IHRydWU7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFu
YWdlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIuaAppbmRleCBkNGQxOTIzNDYxNjUyMGUwY2E0MmVkZDdiMTBjNmNlMjRjZDU0YzI4Li44
MGVkZDViZDIzZGI3MmI5NDI1NDBlM2YwMDAzNjQ4MGU1YjA2NjQzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgK
QEAgLTExNyw3ICsxMTcsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+VmlkZW9GdWxsc2NyZWVu
TWFuYWdlcigpOwogICAgIAogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwotICAgIAorCisgICAgYm9v
bCB2aWRlb0luUGljdHVyZUluUGljdHVyZU5lZWRzR2VuZXJhdGVUZXh0VHJhY2tSZXByZXNlbnRh
dGlvbigpIGNvbnN0OworCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rp
b24mLCBJUEM6OkRlY29kZXImKSBvdmVycmlkZTsKIAogICAgIC8vIEludGVyZmFjZSB0byBXZWJD
aHJvbWVDbGllbnQKQEAgLTE2OSw2ICsxNzEsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgSGFzaE1hcDxQ
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgTW9kZWxJbnRlcmZhY2VUdXBsZT4gbV9j
b250ZXh0TWFwOwogICAgIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIG1fY29udHJv
bHNNYW5hZ2VyQ29udGV4dElkOwogICAgIEhhc2hNYXA8UGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIsIGludD4gbV9jbGllbnRDb3VudHM7CisgICAgV2Vha1B0cjxXZWJDb3JlOjpIVE1M
VmlkZW9FbGVtZW50PiBtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZTsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbQppbmRleCA0YzdlYTNhN2M5ODllYjAy
MTIxMmYwNmUzZmQzYzg3MWZmZGEzYjU5Li45MzMwZmFiMmNkNWI4OGJjMDlmZjlkNWI2OTQxM2Fl
MTk4NzkxMWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbQpAQCAtMTQ4LDYgKzE0OCwxMSBAQCB2b2lkIFZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmludmFsaWRhdGUoKQogICAgIG1fcGFnZSA9IG51bGxwdHI7
CiB9CiAKK2Jvb2wgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6dmlkZW9JblBpY3R1cmVJblBpY3R1
cmVOZWVkc0dlbmVyYXRlVGV4dFRyYWNrUmVwcmVzZW50YXRpb24oKSBjb25zdAoreworICAgIHJl
dHVybiBtX3ZpZGVvRWxlbWVudEluUGljdHVyZUluUGljdHVyZSAmJiBtX3ZpZGVvRWxlbWVudElu
UGljdHVyZUluUGljdHVyZS0+bmVlZHNHZW5lcmF0ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uKCk7
Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6Ok1vZGVsSW50ZXJmYWNlVHVwbGUgVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6Y3JlYXRlTW9kZWxBbmRJbnRlcmZhY2UoUGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQogewogICAgIGF1dG8gbW9kZWwgPSBWaWRlb0Z1
bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudDo6Y3JlYXRlKCk7CkBAIC0yNjUsNiArMjcwLDkgQEAg
dm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudChIVE1MVmlkZW9FbGVtZW4KICAgICBlbHNlCiAgICAgICAgIGludGVyZmFjZS0+c2V0
VGFyZ2V0SXNGdWxsc2NyZWVuKGZhbHNlKTsKIAorICAgIGlmIChtb2RlICE9IEhUTUxNZWRpYUVs
ZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZVBpY3R1cmVJblBpY3R1cmUpCisgICAgICAg
IG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbWFrZVdlYWtQdHIodmlkZW9FbGVt
ZW50KTsKKwogICAgIGludGVyZmFjZS0+c2V0RnVsbHNjcmVlbk1vZGUobW9kZSk7CiAgICAgaW50
ZXJmYWNlLT5zZXRGdWxsc2NyZWVuU3RhbmRieShzdGFuZGJ5KTsKICAgICBtb2RlbC0+c2V0Vmlk
ZW9FbGVtZW50KCZ2aWRlb0VsZW1lbnQpOwpAQCAtMjk1LDcgKzMwMyw3IEBAIHZvaWQgVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRN
TFZpZGVvRWxlbWVuCiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHk6OlNldHVwRnVsbHNjcmVlbldpdGhJRChjb250ZXh0SWQsIGludGVyZmFjZS0+
bGF5ZXJIb3N0aW5nQ29udGV4dCgpLT5jb250ZXh0SUQoKSwgdmlkZW9SZWN0LCBGbG9hdFNpemUo
dmlkZW9FbGVtZW50LnZpZGVvV2lkdGgoKSwgdmlkZW9FbGVtZW50LnZpZGVvSGVpZ2h0KCkpLCBt
X3BhZ2UtPmRldmljZVNjYWxlRmFjdG9yKCksIGludGVyZmFjZS0+ZnVsbHNjcmVlbk1vZGUoKSwg
YWxsb3dzUGljdHVyZUluUGljdHVyZSwgc3RhbmRieSwgdmlkZW9FbGVtZW50LmRvY3VtZW50KCku
cXVpcmtzKCkuYmxvY2tzUmV0dXJuVG9GdWxsc2NyZWVuRnJvbVBpY3R1cmVJblBpY3R1cmVRdWly
aygpKSk7CiB9CiAKLXZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNj
cmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1l
bnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoSFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIExPRyhGdWxsc2NyZWVuLCAi
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVu
dCglcCkiLCB0aGlzKTsKICAgICBBU1NFUlQobV9wYWdlKTsKQEAgLTMwOCwxMiArMzE2LDE1IEBA
IHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudChXZWJDb3JlOjpIVE1MVmlkCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBt
X3BhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpFeGl0RnVsbHNjcmVlbihjb250ZXh0SWQsIGlubGluZVZpZGVvRnJhbWUodmlkZW9F
bGVtZW50KSksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhpcywgY29udGV4
dElkLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRv
IHN1Y2Nlc3MpIG11dGFibGUgeworICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3Nh
Z2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OkV4aXRGdWxsc2NyZWVuKGNvbnRleHRJ
ZCwgaW5saW5lVmlkZW9GcmFtZSh2aWRlb0VsZW1lbnQpKSwgW3Byb3RlY3RlZFRoaXMgPSBtYWtl
UmVmUHRyKHRoaXMpLCB0aGlzLCBjb250ZXh0SWQsIHZpZGVvRWxlbWVudFB0ciA9ICZ2aWRlb0Vs
ZW1lbnQsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1
dG8gc3VjY2VzcykgbXV0YWJsZSB7CiAgICAgICAgIGlmICghc3VjY2VzcykgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICB9CiAKKyAgICAgICAgaWYgKG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID09IHZp
ZGVvRWxlbWVudFB0cikKKyAgICAgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0
dXJlID0gbnVsbHB0cjsKKwogICAgICAgICBhdXRvJiBpbnRlcmZhY2UgPSBlbnN1cmVJbnRlcmZh
Y2UoY29udGV4dElkKTsKICAgICAgICAgaW50ZXJmYWNlLnNldFRhcmdldElzRnVsbHNjcmVlbihm
YWxzZSk7CiAgICAgICAgIGludGVyZmFjZS5zZXRBbmltYXRpb25TdGF0ZShWaWRlb0Z1bGxzY3Jl
ZW5JbnRlcmZhY2VDb250ZXh0OjpBbmltYXRpb25UeXBlOjpGcm9tRnVsbHNjcmVlbik7CkBAIC0z
MjEsMTMgKzMzMiwxNiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1
bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZAogICAgIH0pOwogfQogCi12
b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRo
b3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2Vi
Q29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRhcmdldE1v
ZGUpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01v
ZGVXaXRob3V0QW5pbWF0aW9uKEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRhcmdldE1vZGUp
CiB7CiAgICAgTE9HKEZ1bGxzY3JlZW4sICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0Vmlk
ZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbiglcCkiLCB0aGlzKTsKIAogICAgIEFT
U0VSVChtX3BhZ2UpOwogICAgIEFTU0VSVChtX3ZpZGVvRWxlbWVudHMuY29udGFpbnMoJnZpZGVv
RWxlbWVudCkpOwogCisgICAgaWYgKG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID09
ICZ2aWRlb0VsZW1lbnQpCisgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJl
ID0gbnVsbHB0cjsKKwogICAgIGF1dG8gY29udGV4dElkID0gbV92aWRlb0VsZW1lbnRzLmdldCgm
dmlkZW9FbGVtZW50KTsKICAgICBhdXRvJiBpbnRlcmZhY2UgPSBlbnN1cmVJbnRlcmZhY2UoY29u
dGV4dElkKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418017</attachid>
            <date>2021-01-20 20:17:06 -0800</date>
            <delta_ts>2021-01-20 20:26:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220660-20210120201705.patch</filename>
            <type>text/plain</type>
            <size>7556</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg1ODliNDMwY2RjMzAwOWRk
MTk4ZDQyZWE0ZDk1Y2FiYTcwYmIxZTEuLjMzYjc0MWFmYTI1ZGM1MmQ5NDUwNGYzNGE4N2M2NjBm
MzYyMTZlNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjEtMDEtMjAgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBQaVAgdmlkZW8gc3VidGl0bGVzIHN0
b3AgdXBkYXRpbmcgd2hlbiBTYWZhcmkgaXMgYmFja2dyb3VuZGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA2NjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdWJ0aXRsZXMgaW4gdGhlIHBpY3R1cmUt
aW4tcGljdHVyZSB3aW5kb3cgd2lsbCBzdG9wIHVwZGF0aW5nIHdoZW4gdGhlIGJyb3dzZXIgaXMK
KyAgICAgICAgaW4gdGhlIGJhY2tncm91bmQgYmVjYXVzZSB3ZSBmcmVlemUgdGhlIGxheWVyIHRy
ZWUgd2hlbiBhIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisgICAgICAgIFRoaXMgcGF0
Y2ggZml4ZXMgdGhpcyBpc3N1ZSBieSBhdm9pZGluZyBmcmVlemluZyB0aGUgbGF5ZXIgdHJlZSBp
ZiBhIHZpZGVvIGlzIHBsYXlpbmcKKyAgICAgICAgaW4gcGljdHVyZS1pbi1waWN0dXJlIHdoZW4g
dGhlIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZURy
YXdpbmdBcmVhTGF5ZXJUcmVlRnJlZXplU3RhdGUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6dmlkZW9JblBpY3R1cmVJblBpY3R1cmUgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCk6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlv
bik6CisKIDIwMjEtMDEtMjAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAg
ICAgICBbR1BVUHJvY2Vzc10gTWFyayBJT1N1cmZhY2UgYmFja2luZyBmb3IgUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wncyBkaXNwbGF5QnVmZmVyIGFzIG93bmVkIGJ5IHRoZSBXZWJQcm9jZXNzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDI4M2M0
YTc2MzI0YThiM2QzY2I0NjRmZjVhNDYyY2FhNTJhYzY2NjYuLjUzMDE5NWRjNzY2YzNiNzY5MTlm
NzZlZTAzZDk5NjExOTUzOGNiZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCkBAIC0yNjQzLDYgKzI2NDMsMTQgQEAgdm9pZCBXZWJQYWdlOjp1cGRh
dGVEcmF3aW5nQXJlYUxheWVyVHJlZUZyZWV6ZVN0YXRlKCkKIHsKICAgICBpZiAoIW1fZHJhd2lu
Z0FyZWEpCiAgICAgICAgIHJldHVybjsKKworICAgIC8vIFdoZW4gdGhlIGJyb3dzZXIgaXMgaW4g
dGhlIGJhY2tncm91bmQsIHdlIHNob3VsZCBub3QgZnJlZXplIHRoZSBsYXllciB0cmVlCisgICAg
Ly8gaWYgdGhlIHBhZ2UgaGFzIGEgdmlkZW8gcGxheWluZyBpbiBwaWN0dXJlLWluLXBpY3R1cmUu
CisgICAgaWYgKG1fbGF5ZXJUcmVlRnJlZXplUmVhc29ucy5oYXNFeGFjdGx5T25lQml0U2V0KCkg
JiYgbV9sYXllclRyZWVGcmVlemVSZWFzb25zLmNvbnRhaW5zKExheWVyVHJlZUZyZWV6ZVJlYXNv
bjo6QmFja2dyb3VuZEFwcGxpY2F0aW9uKSAmJiBtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgJiYg
bV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT52aWRlb0luUGljdHVyZUluUGljdHVyZSgpKSB7Cisg
ICAgICAgIG1fZHJhd2luZ0FyZWEtPnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oZmFsc2UpOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJUcmVl
U3RhdGVJc0Zyb3plbighIW1fbGF5ZXJUcmVlRnJlZXplUmVhc29ucyk7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdl
ci5oCmluZGV4IGQ0ZDE5MjM0NjE2NTIwZTBjYTQyZWRkN2IxMGM2Y2UyNGNkNTRjMjguLmU0NDk0
MWNhZDU0ODk2NTlhODdlMDUwNzk2MGU3NjcxMTE0MDA0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApAQCAt
MTE3LDcgKzExNyw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyKCk7CiAgICAgCiAgICAgdm9pZCBpbnZhbGlkYXRlKCk7Ci0gICAgCisKKyAgICBib29sIHZp
ZGVvSW5QaWN0dXJlSW5QaWN0dXJlKCkgY29uc3Q7CisKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNz
YWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOwogCiAgICAgLy8g
SW50ZXJmYWNlIHRvIFdlYkNocm9tZUNsaWVudApAQCAtMTY5LDYgKzE3MSw3IEBAIHByb3RlY3Rl
ZDoKICAgICBIYXNoTWFwPFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBNb2RlbElu
dGVyZmFjZVR1cGxlPiBtX2NvbnRleHRNYXA7CiAgICAgUGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIgbV9jb250cm9sc01hbmFnZXJDb250ZXh0SWQ7CiAgICAgSGFzaE1hcDxQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgaW50PiBtX2NsaWVudENvdW50czsKKyAgICBXZWFr
UHRyPFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQ+IG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5Q
aWN0dXJlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCmluZGV4
IDRjN2VhM2E3Yzk4OWViMDIxMjEyZjA2ZTNmZDNjODcxZmZkYTNiNTkuLmY5NzAwNWZhMjc5OWQ5
Y2M5MmYxOWQ5NjE2NWEwMjBmODlhMjQ5MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCkBAIC0xNDgsNiAr
MTQ4LDExIEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6aW52YWxpZGF0ZSgpCiAgICAg
bV9wYWdlID0gbnVsbHB0cjsKIH0KIAorYm9vbCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjp2aWRl
b0luUGljdHVyZUluUGljdHVyZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuICEhbV92aWRlb0VsZW1l
bnRJblBpY3R1cmVJblBpY3R1cmU7Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6Ok1vZGVs
SW50ZXJmYWNlVHVwbGUgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6Y3JlYXRlTW9kZWxBbmRJbnRl
cmZhY2UoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQogewogICAg
IGF1dG8gbW9kZWwgPSBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudDo6Y3JlYXRlKCk7
CkBAIC0yNjUsNiArMjcwLDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZp
ZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW4KICAgICBlbHNlCiAg
ICAgICAgIGludGVyZmFjZS0+c2V0VGFyZ2V0SXNGdWxsc2NyZWVuKGZhbHNlKTsKIAorICAgIGlm
IChtb2RlID09IEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZVBpY3R1
cmVJblBpY3R1cmUpCisgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0g
bWFrZVdlYWtQdHIodmlkZW9FbGVtZW50KTsKKwogICAgIGludGVyZmFjZS0+c2V0RnVsbHNjcmVl
bk1vZGUobW9kZSk7CiAgICAgaW50ZXJmYWNlLT5zZXRGdWxsc2NyZWVuU3RhbmRieShzdGFuZGJ5
KTsKICAgICBtb2RlbC0+c2V0VmlkZW9FbGVtZW50KCZ2aWRlb0VsZW1lbnQpOwpAQCAtMjk1LDcg
KzMwMyw3IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZW50ZXJWaWRlb0Z1bGxzY3Jl
ZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVuCiAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OlNldHVwRnVsbHNjcmVlbldpdGhJRChj
b250ZXh0SWQsIGludGVyZmFjZS0+bGF5ZXJIb3N0aW5nQ29udGV4dCgpLT5jb250ZXh0SUQoKSwg
dmlkZW9SZWN0LCBGbG9hdFNpemUodmlkZW9FbGVtZW50LnZpZGVvV2lkdGgoKSwgdmlkZW9FbGVt
ZW50LnZpZGVvSGVpZ2h0KCkpLCBtX3BhZ2UtPmRldmljZVNjYWxlRmFjdG9yKCksIGludGVyZmFj
ZS0+ZnVsbHNjcmVlbk1vZGUoKSwgYWxsb3dzUGljdHVyZUluUGljdHVyZSwgc3RhbmRieSwgdmlk
ZW9FbGVtZW50LmRvY3VtZW50KCkucXVpcmtzKCkuYmxvY2tzUmV0dXJuVG9GdWxsc2NyZWVuRnJv
bVBpY3R1cmVJblBpY3R1cmVRdWlyaygpKSk7CiB9CiAKLXZvaWQgVmlkZW9GdWxsc2NyZWVuTWFu
YWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlk
ZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewog
ICAgIExPRyhGdWxsc2NyZWVuLCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVs
bHNjcmVlbkZvclZpZGVvRWxlbWVudCglcCkiLCB0aGlzKTsKICAgICBBU1NFUlQobV9wYWdlKTsK
QEAgLTMwOCwxMiArMzE2LDE1IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZp
ZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkCiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKLSAgICBtX3BhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpFeGl0RnVsbHNjcmVlbihjb250ZXh0SWQsIGlu
bGluZVZpZGVvRnJhbWUodmlkZW9FbGVtZW50KSksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0
cih0aGlzKSwgdGhpcywgY29udGV4dElkLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpXShhdXRvIHN1Y2Nlc3MpIG11dGFibGUgeworICAgIG1fcGFnZS0+c2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OkV4
aXRGdWxsc2NyZWVuKGNvbnRleHRJZCwgaW5saW5lVmlkZW9GcmFtZSh2aWRlb0VsZW1lbnQpKSwg
W3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmUHRyKHRoaXMpLCB0aGlzLCBjb250ZXh0SWQsIHZpZGVv
RWxlbWVudFB0ciA9ICZ2aWRlb0VsZW1lbnQsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcildKGF1dG8gc3VjY2VzcykgbXV0YWJsZSB7CiAgICAgICAgIGlmICgh
c3VjY2VzcykgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAgaWYgKG1fdmlkZW9FbGVtZW50SW5Q
aWN0dXJlSW5QaWN0dXJlID09IHZpZGVvRWxlbWVudFB0cikKKyAgICAgICAgICAgIG1fdmlkZW9F
bGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAgICAgICBhdXRvJiBpbnRl
cmZhY2UgPSBlbnN1cmVJbnRlcmZhY2UoY29udGV4dElkKTsKICAgICAgICAgaW50ZXJmYWNlLnNl
dFRhcmdldElzRnVsbHNjcmVlbihmYWxzZSk7CiAgICAgICAgIGludGVyZmFjZS5zZXRBbmltYXRp
b25TdGF0ZShWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VDb250ZXh0OjpBbmltYXRpb25UeXBlOjpG
cm9tRnVsbHNjcmVlbik7CkBAIC0zMjEsMTMgKzMzMiwxNiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVl
bk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRN
TFZpZAogICAgIH0pOwogfQogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRl
b0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1l
bnQmIHZpZGVvRWxlbWVudCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlIHRhcmdldE1vZGUpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4
aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKEhUTUxWaWRlb0VsZW1lbnQm
IHZpZGVvRWxlbWVudCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlIHRhcmdldE1vZGUpCiB7CiAgICAgTE9HKEZ1bGxzY3JlZW4sICJWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbigl
cCkiLCB0aGlzKTsKIAogICAgIEFTU0VSVChtX3BhZ2UpOwogICAgIEFTU0VSVChtX3ZpZGVvRWxl
bWVudHMuY29udGFpbnMoJnZpZGVvRWxlbWVudCkpOwogCisgICAgaWYgKG1fdmlkZW9FbGVtZW50
SW5QaWN0dXJlSW5QaWN0dXJlID09ICZ2aWRlb0VsZW1lbnQpCisgICAgICAgIG1fdmlkZW9FbGVt
ZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAgIGF1dG8gY29udGV4dElkID0g
bV92aWRlb0VsZW1lbnRzLmdldCgmdmlkZW9FbGVtZW50KTsKICAgICBhdXRvJiBpbnRlcmZhY2Ug
PSBlbnN1cmVJbnRlcmZhY2UoY29udGV4dElkKTsKIAo=
</data>
<flag name="commit-queue"
          id="435848"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418018</attachid>
            <date>2021-01-20 20:24:33 -0800</date>
            <delta_ts>2021-01-21 15:42:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220660-20210120202432.patch</filename>
            <type>text/plain</type>
            <size>7601</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg1ODliNDMwY2RjMzAwOWRk
MTk4ZDQyZWE0ZDk1Y2FiYTcwYmIxZTEuLjMzYjc0MWFmYTI1ZGM1MmQ5NDUwNGYzNGE4N2M2NjBm
MzYyMTZlNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjEtMDEtMjAgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBQaVAgdmlkZW8gc3VidGl0bGVzIHN0
b3AgdXBkYXRpbmcgd2hlbiBTYWZhcmkgaXMgYmFja2dyb3VuZGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA2NjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdWJ0aXRsZXMgaW4gdGhlIHBpY3R1cmUt
aW4tcGljdHVyZSB3aW5kb3cgd2lsbCBzdG9wIHVwZGF0aW5nIHdoZW4gdGhlIGJyb3dzZXIgaXMK
KyAgICAgICAgaW4gdGhlIGJhY2tncm91bmQgYmVjYXVzZSB3ZSBmcmVlemUgdGhlIGxheWVyIHRy
ZWUgd2hlbiBhIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisgICAgICAgIFRoaXMgcGF0
Y2ggZml4ZXMgdGhpcyBpc3N1ZSBieSBhdm9pZGluZyBmcmVlemluZyB0aGUgbGF5ZXIgdHJlZSBp
ZiBhIHZpZGVvIGlzIHBsYXlpbmcKKyAgICAgICAgaW4gcGljdHVyZS1pbi1waWN0dXJlIHdoZW4g
dGhlIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZURy
YXdpbmdBcmVhTGF5ZXJUcmVlRnJlZXplU3RhdGUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6dmlkZW9JblBpY3R1cmVJblBpY3R1cmUgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVv
RWxlbWVudCk6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRW
aWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlv
bik6CisKIDIwMjEtMDEtMjAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAg
ICAgICBbR1BVUHJvY2Vzc10gTWFyayBJT1N1cmZhY2UgYmFja2luZyBmb3IgUmVtb3RlR3JhcGhp
Y3NDb250ZXh0R0wncyBkaXNwbGF5QnVmZmVyIGFzIG93bmVkIGJ5IHRoZSBXZWJQcm9jZXNzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDI4M2M0
YTc2MzI0YThiM2QzY2I0NjRmZjVhNDYyY2FhNTJhYzY2NjYuLjNlM2IyOWYyMzE5NjQ0YTY5ZTY4
NjI1MDIzZGQyNTcyNTkwNDdkNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCkBAIC0yNjQzLDYgKzI2NDMsMTYgQEAgdm9pZCBXZWJQYWdlOjp1cGRh
dGVEcmF3aW5nQXJlYUxheWVyVHJlZUZyZWV6ZVN0YXRlKCkKIHsKICAgICBpZiAoIW1fZHJhd2lu
Z0FyZWEpCiAgICAgICAgIHJldHVybjsKKworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05f
TU9ERSkKKyAgICAvLyBXaGVuIHRoZSBicm93c2VyIGlzIGluIHRoZSBiYWNrZ3JvdW5kLCB3ZSBz
aG91bGQgbm90IGZyZWV6ZSB0aGUgbGF5ZXIgdHJlZQorICAgIC8vIGlmIHRoZSBwYWdlIGhhcyBh
IHZpZGVvIHBsYXlpbmcgaW4gcGljdHVyZS1pbi1waWN0dXJlLgorICAgIGlmIChtX2xheWVyVHJl
ZUZyZWV6ZVJlYXNvbnMuaGFzRXhhY3RseU9uZUJpdFNldCgpICYmIG1fbGF5ZXJUcmVlRnJlZXpl
UmVhc29ucy5jb250YWlucyhMYXllclRyZWVGcmVlemVSZWFzb246OkJhY2tncm91bmRBcHBsaWNh
dGlvbikgJiYgbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyICYmIG1fdmlkZW9GdWxsc2NyZWVuTWFu
YWdlci0+dmlkZW9JblBpY3R1cmVJblBpY3R1cmUoKSkgeworICAgICAgICBtX2RyYXdpbmdBcmVh
LT5zZXRMYXllclRyZWVTdGF0ZUlzRnJvemVuKGZhbHNlKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKyNlbmRpZgorCiAgICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3pl
bighIW1fbGF5ZXJUcmVlRnJlZXplUmVhc29ucyk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmggYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCmluZGV4IGQ0
ZDE5MjM0NjE2NTIwZTBjYTQyZWRkN2IxMGM2Y2UyNGNkNTRjMjguLmU0NDk0MWNhZDU0ODk2NTlh
ODdlMDUwNzk2MGU3NjcxMTE0MDA0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApAQCAtMTE3LDcgKzExNyw5
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCk7CiAgICAg
CiAgICAgdm9pZCBpbnZhbGlkYXRlKCk7Ci0gICAgCisKKyAgICBib29sIHZpZGVvSW5QaWN0dXJl
SW5QaWN0dXJlKCkgY29uc3Q7CisKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29u
bmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIG92ZXJyaWRlOwogCiAgICAgLy8gSW50ZXJmYWNlIHRv
IFdlYkNocm9tZUNsaWVudApAQCAtMTY5LDYgKzE3MSw3IEBAIHByb3RlY3RlZDoKICAgICBIYXNo
TWFwPFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBNb2RlbEludGVyZmFjZVR1cGxl
PiBtX2NvbnRleHRNYXA7CiAgICAgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgbV9j
b250cm9sc01hbmFnZXJDb250ZXh0SWQ7CiAgICAgSGFzaE1hcDxQbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllciwgaW50PiBtX2NsaWVudENvdW50czsKKyAgICBXZWFrUHRyPFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQ+IG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCmluZGV4IDRjN2VhM2E3Yzk4
OWViMDIxMjEyZjA2ZTNmZDNjODcxZmZkYTNiNTkuLmY5NzAwNWZhMjc5OWQ5Y2M5MmYxOWQ5NjE2
NWEwMjBmODlhMjQ5MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCkBAIC0xNDgsNiArMTQ4LDExIEBAIHZv
aWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6aW52YWxpZGF0ZSgpCiAgICAgbV9wYWdlID0gbnVs
bHB0cjsKIH0KIAorYm9vbCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjp2aWRlb0luUGljdHVyZUlu
UGljdHVyZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuICEhbV92aWRlb0VsZW1lbnRJblBpY3R1cmVJ
blBpY3R1cmU7Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6Ok1vZGVsSW50ZXJmYWNlVHVw
bGUgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6Y3JlYXRlTW9kZWxBbmRJbnRlcmZhY2UoUGxheWJh
Y2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQogewogICAgIGF1dG8gbW9kZWwg
PSBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudDo6Y3JlYXRlKCk7CkBAIC0yNjUsNiAr
MjcwLDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVl
bkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVtZW4KICAgICBlbHNlCiAgICAgICAgIGludGVy
ZmFjZS0+c2V0VGFyZ2V0SXNGdWxsc2NyZWVuKGZhbHNlKTsKIAorICAgIGlmIChtb2RlID09IEhU
TUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZVBpY3R1cmVJblBpY3R1cmUp
CisgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbWFrZVdlYWtQdHIo
dmlkZW9FbGVtZW50KTsKKwogICAgIGludGVyZmFjZS0+c2V0RnVsbHNjcmVlbk1vZGUobW9kZSk7
CiAgICAgaW50ZXJmYWNlLT5zZXRGdWxsc2NyZWVuU3RhbmRieShzdGFuZGJ5KTsKICAgICBtb2Rl
bC0+c2V0VmlkZW9FbGVtZW50KCZ2aWRlb0VsZW1lbnQpOwpAQCAtMjk1LDcgKzMwMyw3IEBAIHZv
aWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZW50ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0Vs
ZW1lbnQoSFRNTFZpZGVvRWxlbWVuCiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyUHJveHk6OlNldHVwRnVsbHNjcmVlbldpdGhJRChjb250ZXh0SWQsIGlu
dGVyZmFjZS0+bGF5ZXJIb3N0aW5nQ29udGV4dCgpLT5jb250ZXh0SUQoKSwgdmlkZW9SZWN0LCBG
bG9hdFNpemUodmlkZW9FbGVtZW50LnZpZGVvV2lkdGgoKSwgdmlkZW9FbGVtZW50LnZpZGVvSGVp
Z2h0KCkpLCBtX3BhZ2UtPmRldmljZVNjYWxlRmFjdG9yKCksIGludGVyZmFjZS0+ZnVsbHNjcmVl
bk1vZGUoKSwgYWxsb3dzUGljdHVyZUluUGljdHVyZSwgc3RhbmRieSwgdmlkZW9FbGVtZW50LmRv
Y3VtZW50KCkucXVpcmtzKCkuYmxvY2tzUmV0dXJuVG9GdWxsc2NyZWVuRnJvbVBpY3R1cmVJblBp
Y3R1cmVRdWlyaygpKSk7CiB9CiAKLXZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZp
ZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2
aWRlb0VsZW1lbnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5G
b3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIExPRyhGdWxs
c2NyZWVuLCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZp
ZGVvRWxlbWVudCglcCkiLCB0aGlzKTsKICAgICBBU1NFUlQobV9wYWdlKTsKQEAgLTMwOCwxMiAr
MzE2LDE1IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVl
bkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1MVmlkCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBtX3BhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjpFeGl0RnVsbHNjcmVlbihjb250ZXh0SWQsIGlubGluZVZpZGVvRnJh
bWUodmlkZW9FbGVtZW50KSksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhp
cywgY29udGV4dElkLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpXShhdXRvIHN1Y2Nlc3MpIG11dGFibGUgeworICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OkV4aXRGdWxsc2NyZWVu
KGNvbnRleHRJZCwgaW5saW5lVmlkZW9GcmFtZSh2aWRlb0VsZW1lbnQpKSwgW3Byb3RlY3RlZFRo
aXMgPSBtYWtlUmVmUHRyKHRoaXMpLCB0aGlzLCBjb250ZXh0SWQsIHZpZGVvRWxlbWVudFB0ciA9
ICZ2aWRlb0VsZW1lbnQsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKGF1dG8gc3VjY2VzcykgbXV0YWJsZSB7CiAgICAgICAgIGlmICghc3VjY2Vzcykgewog
ICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICB9CiAKKyAgICAgICAgaWYgKG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0
dXJlID09IHZpZGVvRWxlbWVudFB0cikKKyAgICAgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0
dXJlSW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAgICAgICBhdXRvJiBpbnRlcmZhY2UgPSBlbnN1
cmVJbnRlcmZhY2UoY29udGV4dElkKTsKICAgICAgICAgaW50ZXJmYWNlLnNldFRhcmdldElzRnVs
bHNjcmVlbihmYWxzZSk7CiAgICAgICAgIGludGVyZmFjZS5zZXRBbmltYXRpb25TdGF0ZShWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VDb250ZXh0OjpBbmltYXRpb25UeXBlOjpGcm9tRnVsbHNjcmVl
bik7CkBAIC0zMjEsMTMgKzMzMiwxNiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4
aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoV2ViQ29yZTo6SFRNTFZpZAogICAgIH0p
OwogfQogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5U
b01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxl
bWVudCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
IHRhcmdldE1vZGUpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxz
Y3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVu
dCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRh
cmdldE1vZGUpCiB7CiAgICAgTE9HKEZ1bGxzY3JlZW4sICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
OjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbiglcCkiLCB0aGlzKTsK
IAogICAgIEFTU0VSVChtX3BhZ2UpOwogICAgIEFTU0VSVChtX3ZpZGVvRWxlbWVudHMuY29udGFp
bnMoJnZpZGVvRWxlbWVudCkpOwogCisgICAgaWYgKG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5Q
aWN0dXJlID09ICZ2aWRlb0VsZW1lbnQpCisgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJl
SW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAgIGF1dG8gY29udGV4dElkID0gbV92aWRlb0VsZW1l
bnRzLmdldCgmdmlkZW9FbGVtZW50KTsKICAgICBhdXRvJiBpbnRlcmZhY2UgPSBlbnN1cmVJbnRl
cmZhY2UoY29udGV4dElkKTsKIAo=
</data>
<flag name="review"
          id="435899"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418105</attachid>
            <date>2021-01-21 20:02:53 -0800</date>
            <delta_ts>2021-01-21 22:11:42 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-220660-20210121200252.patch</filename>
            <type>text/plain</type>
            <size>7628</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNjc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg1ODliNDMwY2RjMzAwOWRk
MTk4ZDQyZWE0ZDk1Y2FiYTcwYmIxZTEuLmYwMjc3ZTgyZDdlNjllZGYxNDQ5MDI2NDRjNzQ2NmI4
OGNkODhkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjEtMDEtMjEgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBQaVAgdmlkZW8gc3VidGl0bGVzIHN0
b3AgdXBkYXRpbmcgd2hlbiBTYWZhcmkgaXMgYmFja2dyb3VuZGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA2NjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBTdWJ0aXRsZXMgaW4gdGhlIHBpY3R1cmUtaW4t
cGljdHVyZSB3aW5kb3cgd2lsbCBzdG9wIHVwZGF0aW5nIHdoZW4gdGhlIGJyb3dzZXIgaXMKKyAg
ICAgICAgaW4gdGhlIGJhY2tncm91bmQgYmVjYXVzZSB3ZSBmcmVlemUgdGhlIGxheWVyIHRyZWUg
d2hlbiBhIGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisgICAgICAgIFRoaXMgcGF0Y2gg
Zml4ZXMgdGhpcyBpc3N1ZSBieSBhdm9pZGluZyBmcmVlemluZyB0aGUgbGF5ZXIgdHJlZSBpZiBh
IHZpZGVvIGlzIHBsYXlpbmcKKyAgICAgICAgaW4gcGljdHVyZS1pbi1waWN0dXJlIHdoZW4gdGhl
IGJyb3dzZXIgaXMgaW4gdGhlIGJhY2tncm91bmQuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZURyYXdp
bmdBcmVhTGF5ZXJUcmVlRnJlZXplU3RhdGUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVu
TWFuYWdlcjo6dmlkZW9JblBpY3R1cmVJblBpY3R1cmUgY29uc3QpOgorICAgICAgICAoV2ViS2l0
OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxl
bWVudCk6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRl
b0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQpOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0aG91dEFuaW1hdGlvbik6
CisKIDIwMjEtMDEtMjAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAg
ICBbR1BVUHJvY2Vzc10gTWFyayBJT1N1cmZhY2UgYmFja2luZyBmb3IgUmVtb3RlR3JhcGhpY3ND
b250ZXh0R0wncyBkaXNwbGF5QnVmZmVyIGFzIG93bmVkIGJ5IHRoZSBXZWJQcm9jZXNzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDI4M2M0YTc2
MzI0YThiM2QzY2I0NjRmZjVhNDYyY2FhNTJhYzY2NjYuLjcyMWQyMzc5YWY0NDM0YWMzMTQ5ZDZh
NGFlMjUyYzQwZDg0NjQzMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCkBAIC0yNjQzLDYgKzI2NDMsMTYgQEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVE
cmF3aW5nQXJlYUxheWVyVHJlZUZyZWV6ZVN0YXRlKCkKIHsKICAgICBpZiAoIW1fZHJhd2luZ0Fy
ZWEpCiAgICAgICAgIHJldHVybjsKKworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkKKyAgICAvLyBXaGVuIHRoZSBicm93c2VyIGlzIGluIHRoZSBiYWNrZ3JvdW5kLCB3ZSBzaG91
bGQgbm90IGZyZWV6ZSB0aGUgbGF5ZXIgdHJlZQorICAgIC8vIGlmIHRoZSBwYWdlIGhhcyBhIHZp
ZGVvIHBsYXlpbmcgaW4gcGljdHVyZS1pbi1waWN0dXJlLgorICAgIGlmIChtX3ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIgJiYgbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT5oYXNWaWRlb1BsYXlpbmdJ
blBpY3R1cmVJblBpY3R1cmUoKSAmJiBtX2xheWVyVHJlZUZyZWV6ZVJlYXNvbnMuaGFzRXhhY3Rs
eU9uZUJpdFNldCgpICYmIG1fbGF5ZXJUcmVlRnJlZXplUmVhc29ucy5jb250YWlucyhMYXllclRy
ZWVGcmVlemVSZWFzb246OkJhY2tncm91bmRBcHBsaWNhdGlvbikpIHsKKyAgICAgICAgbV9kcmF3
aW5nQXJlYS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihmYWxzZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisjZW5kaWYKKwogICAgIG1fZHJhd2luZ0FyZWEtPnNldExheWVyVHJlZVN0YXRl
SXNGcm96ZW4oISFtX2xheWVyVHJlZUZyZWV6ZVJlYXNvbnMpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApp
bmRleCBkNGQxOTIzNDYxNjUyMGUwY2E0MmVkZDdiMTBjNmNlMjRjZDU0YzI4Li5iNWFjMjMwMzc3
NjFmYzlhYmU1YmQzZmVhMjI3OWQ2Nzg0OTA3M2EyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKQEAgLTExNyw3
ICsxMTcsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+VmlkZW9GdWxsc2NyZWVuTWFuYWdlcigp
OwogICAgIAogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwotICAgIAorCisgICAgYm9vbCBoYXNWaWRl
b1BsYXlpbmdJblBpY3R1cmVJblBpY3R1cmUoKSBjb25zdDsKKwogICAgIHZvaWQgZGlkUmVjZWl2
ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CiAKICAg
ICAvLyBJbnRlcmZhY2UgdG8gV2ViQ2hyb21lQ2xpZW50CkBAIC0xNjksNiArMTcxLDcgQEAgcHJv
dGVjdGVkOgogICAgIEhhc2hNYXA8UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIsIE1v
ZGVsSW50ZXJmYWNlVHVwbGU+IG1fY29udGV4dE1hcDsKICAgICBQbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllciBtX2NvbnRyb2xzTWFuYWdlckNvbnRleHRJZDsKICAgICBIYXNoTWFwPFBs
YXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBpbnQ+IG1fY2xpZW50Q291bnRzOworICAg
IFdlYWtQdHI8V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudD4gbV92aWRlb0VsZW1lbnRJblBpY3R1
cmVJblBpY3R1cmU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0K
aW5kZXggNGM3ZWEzYTdjOTg5ZWIwMjEyMTJmMDZlM2ZkM2M4NzFmZmRhM2I1OS4uNDdjN2M4ZGY2
ZmM3MjgxNThlZWQyYTU4ZGViMDAwMWRmMDg5MmIyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTE0
OCw2ICsxNDgsMTEgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjppbnZhbGlkYXRlKCkK
ICAgICBtX3BhZ2UgPSBudWxscHRyOwogfQogCitib29sIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6
Omhhc1ZpZGVvUGxheWluZ0luUGljdHVyZUluUGljdHVyZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
ICEhbV92aWRlb0VsZW1lbnRJblBpY3R1cmVJblBpY3R1cmU7Cit9CisKIFZpZGVvRnVsbHNjcmVl
bk1hbmFnZXI6Ok1vZGVsSW50ZXJmYWNlVHVwbGUgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6Y3Jl
YXRlTW9kZWxBbmRJbnRlcmZhY2UoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29u
dGV4dElkKQogewogICAgIGF1dG8gbW9kZWwgPSBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxl
bWVudDo6Y3JlYXRlKCk7CkBAIC0yNjUsNiArMjcwLDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyOjplbnRlclZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChIVE1MVmlkZW9FbGVt
ZW4KICAgICBlbHNlCiAgICAgICAgIGludGVyZmFjZS0+c2V0VGFyZ2V0SXNGdWxsc2NyZWVuKGZh
bHNlKTsKIAorICAgIGlmIChtb2RlID09IEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxs
c2NyZWVuTW9kZVBpY3R1cmVJblBpY3R1cmUpCisgICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0
dXJlSW5QaWN0dXJlID0gbWFrZVdlYWtQdHIodmlkZW9FbGVtZW50KTsKKwogICAgIGludGVyZmFj
ZS0+c2V0RnVsbHNjcmVlbk1vZGUobW9kZSk7CiAgICAgaW50ZXJmYWNlLT5zZXRGdWxsc2NyZWVu
U3RhbmRieShzdGFuZGJ5KTsKICAgICBtb2RlbC0+c2V0VmlkZW9FbGVtZW50KCZ2aWRlb0VsZW1l
bnQpOwpAQCAtMjk1LDcgKzMwMyw3IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZW50
ZXJWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVuCiAgICAgbV9w
YWdlLT5zZW5kKE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OlNldHVwRnVs
bHNjcmVlbldpdGhJRChjb250ZXh0SWQsIGludGVyZmFjZS0+bGF5ZXJIb3N0aW5nQ29udGV4dCgp
LT5jb250ZXh0SUQoKSwgdmlkZW9SZWN0LCBGbG9hdFNpemUodmlkZW9FbGVtZW50LnZpZGVvV2lk
dGgoKSwgdmlkZW9FbGVtZW50LnZpZGVvSGVpZ2h0KCkpLCBtX3BhZ2UtPmRldmljZVNjYWxlRmFj
dG9yKCksIGludGVyZmFjZS0+ZnVsbHNjcmVlbk1vZGUoKSwgYWxsb3dzUGljdHVyZUluUGljdHVy
ZSwgc3RhbmRieSwgdmlkZW9FbGVtZW50LmRvY3VtZW50KCkucXVpcmtzKCkuYmxvY2tzUmV0dXJu
VG9GdWxsc2NyZWVuRnJvbVBpY3R1cmVJblBpY3R1cmVRdWlyaygpKSk7CiB9CiAKLXZvaWQgVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChX
ZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1h
bmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1lbnQoSFRNTFZpZGVvRWxlbWVu
dCYgdmlkZW9FbGVtZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQogewogICAgIExPRyhGdWxsc2NyZWVuLCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdl
cjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudCglcCkiLCB0aGlzKTsKICAgICBB
U1NFUlQobV9wYWdlKTsKQEAgLTMwOCwxMiArMzE2LDE1IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVu
TWFuYWdlcjo6ZXhpdFZpZGVvRnVsbHNjcmVlbkZvclZpZGVvRWxlbWVudChXZWJDb3JlOjpIVE1M
VmlkCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX3BhZ2UtPnNlbmRXaXRoQXN5bmNS
ZXBseShNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpFeGl0RnVsbHNjcmVl
bihjb250ZXh0SWQsIGlubGluZVZpZGVvRnJhbWUodmlkZW9FbGVtZW50KSksIFtwcm90ZWN0ZWRU
aGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhpcywgY29udGV4dElkLCBjb21wbGV0aW9uSGFuZGxl
ciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHN1Y2Nlc3MpIG11dGFibGUgewor
ICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHk6OkV4aXRGdWxsc2NyZWVuKGNvbnRleHRJZCwgaW5saW5lVmlkZW9GcmFtZSh2
aWRlb0VsZW1lbnQpKSwgW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmUHRyKHRoaXMpLCB0aGlzLCBj
b250ZXh0SWQsIHZpZGVvRWxlbWVudFB0ciA9ICZ2aWRlb0VsZW1lbnQsIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gc3VjY2VzcykgbXV0YWJsZSB7
CiAgICAgICAgIGlmICghc3VjY2VzcykgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
ZmFsc2UpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAgaWYgKG1f
dmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID09IHZpZGVvRWxlbWVudFB0cikKKyAgICAg
ICAgICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAg
ICAgICBhdXRvJiBpbnRlcmZhY2UgPSBlbnN1cmVJbnRlcmZhY2UoY29udGV4dElkKTsKICAgICAg
ICAgaW50ZXJmYWNlLnNldFRhcmdldElzRnVsbHNjcmVlbihmYWxzZSk7CiAgICAgICAgIGludGVy
ZmFjZS5zZXRBbmltYXRpb25TdGF0ZShWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VDb250ZXh0OjpB
bmltYXRpb25UeXBlOjpGcm9tRnVsbHNjcmVlbik7CkBAIC0zMjEsMTMgKzMzMiwxNiBAQCB2b2lk
IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Gb3JWaWRlb0VsZW1l
bnQoV2ViQ29yZTo6SFRNTFZpZAogICAgIH0pOwogfQogCi12b2lkIFZpZGVvRnVsbHNjcmVlbk1h
bmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVu
dEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRhcmdldE1vZGUpCit2b2lkIFZpZGVvRnVsbHNj
cmVlbk1hbmFnZXI6OmV4aXRWaWRlb0Z1bGxzY3JlZW5Ub01vZGVXaXRob3V0QW5pbWF0aW9uKEhU
TUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVu
dW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHRhcmdldE1vZGUpCiB7CiAgICAgTE9HKEZ1bGxzY3Jl
ZW4sICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpleGl0VmlkZW9GdWxsc2NyZWVuVG9Nb2RlV2l0
aG91dEFuaW1hdGlvbiglcCkiLCB0aGlzKTsKIAogICAgIEFTU0VSVChtX3BhZ2UpOwogICAgIEFT
U0VSVChtX3ZpZGVvRWxlbWVudHMuY29udGFpbnMoJnZpZGVvRWxlbWVudCkpOwogCisgICAgaWYg
KG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID09ICZ2aWRlb0VsZW1lbnQpCisgICAg
ICAgIG1fdmlkZW9FbGVtZW50SW5QaWN0dXJlSW5QaWN0dXJlID0gbnVsbHB0cjsKKwogICAgIGF1
dG8gY29udGV4dElkID0gbV92aWRlb0VsZW1lbnRzLmdldCgmdmlkZW9FbGVtZW50KTsKICAgICBh
dXRvJiBpbnRlcmZhY2UgPSBlbnN1cmVJbnRlcmZhY2UoY29udGV4dElkKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>