<?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>202774</bug_id>
          
          <creation_ts>2019-10-09 16:35:06 -0700</creation_ts>
          <short_desc>[Picture-in-Picture Web API] The implementation needs runtime logging</short_desc>
          <delta_ts>2019-10-25 07:17:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          <dependson>201024</dependson>
          <blocked>182688</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1578446</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-09 16:35:06 -0700</bug_when>
    <thetext>This bug is created to add runtime logging to the implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579859</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-10-14 15:35:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/56266937&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1581538</commentid>
    <comment_count>2</comment_count>
      <attachid>381333</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-18 14:44:49 -0700</bug_when>
    <thetext>Created attachment 381333
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1581544</commentid>
    <comment_count>3</comment_count>
      <attachid>381335</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-18 14:54:51 -0700</bug_when>
    <thetext>Created attachment 381335
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1581590</commentid>
    <comment_count>4</comment_count>
      <attachid>381335</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2019-10-18 16:29:57 -0700</bug_when>
    <thetext>Comment on attachment 381335
Patch

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

&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:73
&gt; +    LOG(Media, &quot;HTMLVideoElementPictureInPicture::requestPictureInPicture&quot;);

ALWAYS_LOG(LOGIDENTIFIER)

&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:80
&gt; +        promise-&gt;reject(InvalidStateError, &quot;The video element is not ready to enter the Picture-in-Picture mode.&quot;);

You should add logging for each of these rejections, eg:

    ERROR_LOG(LOGIDENTIFIER, &quot;The video element is not ready to enter the Picture-in-Picture mode&quot;)

 The string in the Promise rejection is available to script, but the runtime logging will show up in the console log so we can diagnose failures later.

&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.h:84
&gt; +    RefPtr&lt;Logger&gt; m_logger;

This should be a Ref&lt;const Logger&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1581612</commentid>
    <comment_count>5</comment_count>
      <attachid>381335</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-18 16:49:46 -0700</bug_when>
    <thetext>Comment on attachment 381335
Patch

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

&gt;&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:73
&gt;&gt; +    LOG(Media, &quot;HTMLVideoElementPictureInPicture::requestPictureInPicture&quot;);
&gt; 
&gt; ALWAYS_LOG(LOGIDENTIFIER)

Cannot use ALWAYS_LOG() here because this function is static.

&gt;&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:80
&gt;&gt; +        promise-&gt;reject(InvalidStateError, &quot;The video element is not ready to enter the Picture-in-Picture mode.&quot;);
&gt; 
&gt; You should add logging for each of these rejections, eg:
&gt; 
&gt;     ERROR_LOG(LOGIDENTIFIER, &quot;The video element is not ready to enter the Picture-in-Picture mode&quot;)
&gt; 
&gt;  The string in the Promise rejection is available to script, but the runtime logging will show up in the console log so we can diagnose failures later.

Right, will fix it.

&gt;&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.h:84
&gt;&gt; +    RefPtr&lt;Logger&gt; m_logger;
&gt; 
&gt; This should be a Ref&lt;const Logger&gt;

Right, will fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1581625</commentid>
    <comment_count>6</comment_count>
      <attachid>381349</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-18 17:06:26 -0700</bug_when>
    <thetext>Created attachment 381349
A revised patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1582491</commentid>
    <comment_count>7</comment_count>
      <attachid>381584</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-22 12:41:05 -0700</bug_when>
    <thetext>Created attachment 381584
Patch

Updated the patch after discussion with Eric offline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1582581</commentid>
    <comment_count>8</comment_count>
      <attachid>381584</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-22 14:28:43 -0700</bug_when>
    <thetext>Comment on attachment 381584
Patch

Clearing flags on attachment: 381584

Committed r251458: &lt;https://trac.webkit.org/changeset/251458&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1582582</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-22 14:28:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583788</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2019-10-25 06:58:22 -0700</bug_when>
    <thetext>(In reply to Peng Liu from comment #5)
&gt; Comment on attachment 381335 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=381335&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:80
&gt; &gt;&gt; +        promise-&gt;reject(InvalidStateError, &quot;The video element is not ready to enter the Picture-in-Picture mode.&quot;);
&gt; &gt; 
&gt; &gt; You should add logging for each of these rejections, eg:
&gt; &gt; 
&gt; &gt;     ERROR_LOG(LOGIDENTIFIER, &quot;The video element is not ready to enter the Picture-in-Picture mode&quot;)
&gt; &gt; 
&gt; &gt;  The string in the Promise rejection is available to script, but the runtime logging will show up in the console log so we can diagnose failures later.
&gt; 
&gt; Right, will fix it.
&gt; 
  This was not changed in the final patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1583790</commentid>
    <comment_count>11</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2019-10-25 07:17:54 -0700</bug_when>
    <thetext>Right. We cannot use macros like ERROR_LOG because the function is static.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381333</attachid>
            <date>2019-10-18 14:44:49 -0700</date>
            <delta_ts>2019-10-18 14:55:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>202774.patch</filename>
            <type>text/plain</type>
            <size>8313</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ZTJjODBlOGM5NC4uNTc1YTA4MDdjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxOS0xMC0xOCAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29tPgor
CisgICAgICAgIFtQaWN0dXJlLWluLVBpY3R1cmUgV2ViIEFQSV0gVGhlIGltcGxlbWVudGF0aW9u
IG5lZWRzIHJ1bnRpbWUgbG9nZ2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAyNzc0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjI2NjkzNz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPbmx5IGFk
ZCBsb2dnaW5nLCBubyBuZXcgdGVzdHMgbmVlZGVkLgorCisgICAgICAgICogTW9kdWxlcy9waWN0
dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpIVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZTo6fkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpyZXF1
ZXN0UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGlj
dHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVy
ZTo6ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmxvZ0NoYW5uZWwgY29uc3QpOgorICAgICAgICAqIE1v
ZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5o
OgorCiAyMDE5LTEwLTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGVwcmVjYXRlIEFjdGl2ZURPTU9iamVjdDo6Y2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVu
c2lvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1
cmUvSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJl
LmNwcAppbmRleCBkZjk2MGIyOTM3OS4uMDMxZjdiNzg5MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUlu
UGljdHVyZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJl
L0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcApAQCAtMzAsNiArMzAsNyBAQAog
I2lmIEVOQUJMRShQSUNUVVJFX0lOX1BJQ1RVUkVfQVBJKQogCiAjaW5jbHVkZSAiSFRNTFZpZGVv
RWxlbWVudC5oIgorI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VE
ZWZlcnJlZC5oIgogI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1cmVXaW5kb3cuaCIKICNpbmNsdWRl
ICJWaWRlb1RyYWNrTGlzdC5oIgpAQCAtNDEsMTIgKzQyLDE4IEBAIFdURl9NQUtFX0lTT19BTExP
Q0FURURfSU1QTChIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZSk7CiAKIEhUTUxWaWRl
b0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVy
ZShIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQpCiAgICAgOiBtX3ZpZGVvRWxlbWVudCh2
aWRlb0VsZW1lbnQpCisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgLCBtX2xvZ2dlcigm
dmlkZW9FbGVtZW50LmRvY3VtZW50KCkubG9nZ2VyKCkpCisgICAgLCBtX2xvZ0lkZW50aWZpZXIo
dW5pcXVlTG9nSWRlbnRpZmllcigpKQorI2VuZGlmCiB7CisgICAgQUxXQVlTX0xPRyhMT0dJREVO
VElGSUVSKTsKICAgICBtX3ZpZGVvRWxlbWVudC5zZXRQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIo
dGhpcyk7CiB9CiAKIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjp+SFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmUoKQogeworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklF
Uik7CiAgICAgbV92aWRlb0VsZW1lbnQuc2V0UGljdHVyZUluUGljdHVyZU9ic2VydmVyKG51bGxw
dHIpOwogfQogCkBAIC02MywzNyArNzAsMzggQEAgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBp
Y3R1cmUqIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpmcm9tKEhUTUxWaWQKIAog
dm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6cmVxdWVzdFBpY3R1cmVJblBp
Y3R1cmUoSFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50LCBSZWY8RGVmZXJyZWRQcm9taXNl
PiYmIHByb21pc2UpCiB7CisgICAgTE9HKE1lZGlhLCAiSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJ
blBpY3R1cmU6OnJlcXVlc3RQaWN0dXJlSW5QaWN0dXJlIik7CiAgICAgaWYgKCF2aWRlb0VsZW1l
bnQucGxheWVyKCkgfHwgIXZpZGVvRWxlbWVudC5wbGF5ZXIoKS0+c3VwcG9ydHNQaWN0dXJlSW5Q
aWN0dXJlKCkpIHsKICAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdFN1cHBvcnRlZEVycm9yKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIGlmICh2aWRlb0VsZW1lbnQucmVhZHlTdGF0
ZSgpID09IEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6SEFWRV9OT1RISU5HKSB7Ci0gICAgICAgIHBy
b21pc2UtPnJlamVjdChJbnZhbGlkU3RhdGVFcnJvcik7CisgICAgICAgIHByb21pc2UtPnJlamVj
dChJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGlzIG5vdCByZWFkeSB0byBl
bnRlciB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKCF2aWRlb0VsZW1lbnQudmlk
ZW9UcmFja3MoKSB8fCAhdmlkZW9FbGVtZW50LnZpZGVvVHJhY2tzKCktPmxlbmd0aCgpKSB7Ci0g
ICAgICAgIHByb21pc2UtPnJlamVjdChJbnZhbGlkU3RhdGVFcnJvcik7CisgICAgICAgIHByb21p
c2UtPnJlamVjdChJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGRvZXMgbm90
IGhhdmUgYSB2aWRlbyB0cmFjayBvciBpdCBoYXMgbm90IGRldGVjdGVkIGEgdmlkZW8gdHJhY2sg
eWV0LiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogI2VuZGlmCiAKICAgICBib29sIHVzZXJB
Y3RpdmF0aW9uUmVxdWlyZWQgPSAhdmlkZW9FbGVtZW50LmRvY3VtZW50KCkucGljdHVyZUluUGlj
dHVyZUVsZW1lbnQoKTsKICAgICBpZiAodXNlckFjdGl2YXRpb25SZXF1aXJlZCAmJiAhVXNlckdl
c3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSB7Ci0gICAgICAgIHByb21p
c2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IpOworICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90
QWxsb3dlZEVycm9yLCAiVGhlIHJlcXVlc3QgaXMgbm90IHRyaWdnZXJlZCBieSBhIHVzZXIgYWN0
aXZhdGlvbi4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIGlmICh2aWRlb0VsZW1l
bnQuZG9jdW1lbnQoKS5waWN0dXJlSW5QaWN0dXJlRWxlbWVudCgpID09ICZ2aWRlb0VsZW1lbnQp
IHsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvcik7CisgICAgICAgIHBy
b21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IsICJUaGUgdmlkZW8gZWxlbWVudCBpcyBhbHJl
YWR5IGluIHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAogICAgIGF1dG8gdmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZSA9IEhUTUxWaWRl
b0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpmcm9tKHZpZGVvRWxlbWVudCk7CiAgICAgaWYgKHZp
ZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUtPm1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlz
ZSB8fCB2aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLT5tX2V4aXRQaWN0dXJlSW5QaWN0dXJl
UHJvbWlzZSkgewotICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9yKTsKKyAg
ICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50
IGlzIHByb2Nlc3NpbmcgYSBQaWN0dXJlLWluLVBpY3R1cmUgcmVxdWVzdC4iKTsKICAgICAgICAg
cmV0dXJuOwogICAgIH0KIApAQCAtMTAxLDcgKzEwOSw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVu
dFBpY3R1cmVJblBpY3R1cmU6OnJlcXVlc3RQaWN0dXJlSW5QaWN0dXJlKEhUTUxWaWRlb0VsZW1l
bnQmCiAgICAgICAgIHZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUtPm1fZW50ZXJQaWN0dXJl
SW5QaWN0dXJlUHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSk7CiAgICAgICAgIHZpZGVvRWxlbWVu
dC53ZWJraXRTZXRQcmVzZW50YXRpb25Nb2RlKEhUTUxWaWRlb0VsZW1lbnQ6OlZpZGVvUHJlc2Vu
dGF0aW9uTW9kZTo6UGljdHVyZUluUGljdHVyZSk7CiAgICAgfSBlbHNlCi0gICAgICAgIHByb21p
c2UtPnJlamVjdChOb3RTdXBwb3J0ZWRFcnJvcik7CisgICAgICAgIHByb21pc2UtPnJlamVjdChO
b3RTdXBwb3J0ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhl
IFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIpOwogfQogCiBib29sIEhUTUxWaWRlb0VsZW1lbnRQ
aWN0dXJlSW5QaWN0dXJlOjphdXRvUGljdHVyZUluUGljdHVyZShIVE1MVmlkZW9FbGVtZW50JiB2
aWRlb0VsZW1lbnQpCkBAIC0xMjYsNiArMTM0LDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50UGlj
dHVyZUluUGljdHVyZTo6c2V0RGlzYWJsZVBpY3R1cmVJblBpY3R1cmUoSFRNTFZpZGVvRWxlbWUK
IAogdm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBp
Y3R1cmUoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQogeworICAgIElORk9fTE9HKExP
R0lERU5USUZJRVIpOwogICAgIGlmIChtX2VudGVyUGljdHVyZUluUGljdHVyZVByb21pc2UgfHwg
bV9leGl0UGljdHVyZUluUGljdHVyZVByb21pc2UpIHsKICAgICAgICAgcHJvbWlzZS0+cmVqZWN0
KE5vdEFsbG93ZWRFcnJvcik7CiAgICAgICAgIHJldHVybjsKQEAgLTEzNyw2ICsxNDYsNyBAQCB2
b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpleGl0UGljdHVyZUluUGljdHVy
ZShSZWY8RGVmZXJyZWRQcm9taXNlPgogCiB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5Q
aWN0dXJlOjpkaWRFbnRlclBpY3R1cmVJblBpY3R1cmUoKQogeworICAgIElORk9fTE9HKExPR0lE
RU5USUZJRVIpOwogICAgIG1fdmlkZW9FbGVtZW50LmRvY3VtZW50KCkuc2V0UGljdHVyZUluUGlj
dHVyZUVsZW1lbnQoJm1fdmlkZW9FbGVtZW50KTsKICAgICBpZiAobV9lbnRlclBpY3R1cmVJblBp
Y3R1cmVQcm9taXNlKSB7CiAgICAgICAgIG1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZS0+
cmVzb2x2ZSgpOwpAQCAtMTQ2LDYgKzE1Niw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1
cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGljdHVyZSgpCiAKIHZvaWQgSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkKIHsKKyAg
ICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKICAgICBtX3ZpZGVvRWxlbWVudC5kb2N1bWVudCgp
LnNldFBpY3R1cmVJblBpY3R1cmVFbGVtZW50KG51bGxwdHIpOwogICAgIGlmIChtX2V4aXRQaWN0
dXJlSW5QaWN0dXJlUHJvbWlzZSkgewogICAgICAgICBtX2V4aXRQaWN0dXJlSW5QaWN0dXJlUHJv
bWlzZS0+cmVzb2x2ZSgpOwpAQCAtMTUzLDYgKzE2NCwxMyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1l
bnRQaWN0dXJlSW5QaWN0dXJlOjpkaWRFeGl0UGljdHVyZUluUGljdHVyZSgpCiAgICAgfQogfQog
CisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECitXVEZMb2dDaGFubmVsJiBIVE1MVmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZTo6bG9nQ2hhbm5lbCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIExv
Z01lZGlhOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8v
IEVOQUJMRShQSUNUVVJFX0lOX1BJQ1RVUkVfQVBJKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0
dXJlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmUuaAppbmRleCA1MzExYzAyZmM2OC4uNjc5MDAwNzE5YTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1M
VmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oCkBA
IC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiUGljdHVyZUluUGljdHVyZU9ic2VydmVyLmgiCiAj
aW5jbHVkZSAiU3VwcGxlbWVudGFibGUuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jLmg+Cisj
aW5jbHVkZSA8d3RmL0xvZ2dlckhlbHBlci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAg
LTQwLDcgKzQxLDExIEBAIGNsYXNzIFBpY3R1cmVJblBpY3R1cmVXaW5kb3c7CiAKIGNsYXNzIEhU
TUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlCiAgICAgOiBwdWJsaWMgU3VwcGxlbWVudDxI
VE1MVmlkZW9FbGVtZW50PgotICAgICwgcHVibGljIFBpY3R1cmVJblBpY3R1cmVPYnNlcnZlciB7
CisgICAgLCBwdWJsaWMgUGljdHVyZUluUGljdHVyZU9ic2VydmVyCisjaWYgIVJFTEVBU0VfTE9H
X0RJU0FCTEVECisgICAgLCBwcml2YXRlIExvZ2dlckhlbHBlcgorI2VuZGlmCit7CiAgICAgV1RG
X01BS0VfSVNPX0FMTE9DQVRFRChIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZSk7CiBw
dWJsaWM6CiAgICAgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUoSFRNTFZpZGVvRWxl
bWVudCYpOwpAQCAtNTgsNiArNjMsMTMgQEAgcHVibGljOgogICAgIHZvaWQgZGlkRW50ZXJQaWN0
dXJlSW5QaWN0dXJlKCk7CiAgICAgdm9pZCBkaWRFeGl0UGljdHVyZUluUGljdHVyZSgpOwogCisj
aWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgY29uc3QgTG9nZ2VyJiBsb2dnZXIoKSBjb25z
dCBmaW5hbCB7IHJldHVybiAqbV9sb2dnZXIuZ2V0KCk7IH0KKyAgICBjb25zdCB2b2lkKiBsb2dJ
ZGVudGlmaWVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CisgICAg
Y29uc3QgY2hhciogbG9nQ2xhc3NOYW1lKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIkhUTUxWaWRl
b0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlIjsgfQorICAgIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5u
ZWwoKSBjb25zdCBmaW5hbDsKKyNlbmRpZgorCiBwcml2YXRlOgogICAgIHN0YXRpYyBjb25zdCBj
aGFyKiBzdXBwbGVtZW50TmFtZSgpIHsgcmV0dXJuICJIVE1MVmlkZW9FbGVtZW50UGljdHVyZUlu
UGljdHVyZSI7IH0KIApAQCAtNjcsNiArNzksMTEgQEAgcHJpdmF0ZToKICAgICBIVE1MVmlkZW9F
bGVtZW50JiBtX3ZpZGVvRWxlbWVudDsKICAgICBSZWZQdHI8RGVmZXJyZWRQcm9taXNlPiBtX2Vu
dGVyUGljdHVyZUluUGljdHVyZVByb21pc2U7CiAgICAgUmVmUHRyPERlZmVycmVkUHJvbWlzZT4g
bV9leGl0UGljdHVyZUluUGljdHVyZVByb21pc2U7CisKKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKKyAgICBSZWZQdHI8TG9nZ2VyPiBtX2xvZ2dlcjsKKyAgICBjb25zdCB2b2lkKiBtX2xvZ0lk
ZW50aWZpZXI7CisjZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381335</attachid>
            <date>2019-10-18 14:54:51 -0700</date>
            <delta_ts>2019-10-18 17:06:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>202774.patch</filename>
            <type>text/plain</type>
            <size>8312</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ZTJjODBlOGM5NC4uNTc1YTA4MDdjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxOS0xMC0xOCAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29tPgor
CisgICAgICAgIFtQaWN0dXJlLWluLVBpY3R1cmUgV2ViIEFQSV0gVGhlIGltcGxlbWVudGF0aW9u
IG5lZWRzIHJ1bnRpbWUgbG9nZ2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAyNzc0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjI2NjkzNz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPbmx5IGFk
ZCBsb2dnaW5nLCBubyBuZXcgdGVzdHMgbmVlZGVkLgorCisgICAgICAgICogTW9kdWxlcy9waWN0
dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpIVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZTo6fkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpyZXF1
ZXN0UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGlj
dHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVy
ZTo6ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmxvZ0NoYW5uZWwgY29uc3QpOgorICAgICAgICAqIE1v
ZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5o
OgorCiAyMDE5LTEwLTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGVwcmVjYXRlIEFjdGl2ZURPTU9iamVjdDo6Y2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVu
c2lvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1
cmUvSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJl
LmNwcAppbmRleCBkZjk2MGIyOTM3OS4uMWZjNDY0YTU5ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUlu
UGljdHVyZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJl
L0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcApAQCAtMzEsNiArMzEsNyBAQAog
CiAjaW5jbHVkZSAiSFRNTFZpZGVvRWxlbWVudC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURl
ZmVycmVkLmgiCisjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1
cmVXaW5kb3cuaCIKICNpbmNsdWRlICJWaWRlb1RyYWNrTGlzdC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CkBAIC00MSwxMiArNDIsMTggQEAgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRF9JTVBMKEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKTsKIAogSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJl
KEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCkKICAgICA6IG1fdmlkZW9FbGVtZW50KHZp
ZGVvRWxlbWVudCkKKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAgICAsIG1fbG9nZ2VyKCZ2
aWRlb0VsZW1lbnQuZG9jdW1lbnQoKS5sb2dnZXIoKSkKKyAgICAsIG1fbG9nSWRlbnRpZmllcih1
bmlxdWVMb2dJZGVudGlmaWVyKCkpCisjZW5kaWYKIHsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5U
SUZJRVIpOwogICAgIG1fdmlkZW9FbGVtZW50LnNldFBpY3R1cmVJblBpY3R1cmVPYnNlcnZlcih0
aGlzKTsKIH0KIAogSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6On5IVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZSgpCiB7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVS
KTsKICAgICBtX3ZpZGVvRWxlbWVudC5zZXRQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIobnVsbHB0
cik7CiB9CiAKQEAgLTYzLDM3ICs3MCwzOCBAQCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGlj
dHVyZSogSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmZyb20oSFRNTFZpZAogCiB2
b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpyZXF1ZXN0UGljdHVyZUluUGlj
dHVyZShIVE1MVmlkZW9FbGVtZW50JiB2aWRlb0VsZW1lbnQsIFJlZjxEZWZlcnJlZFByb21pc2U+
JiYgcHJvbWlzZSkKIHsKKyAgICBMT0coTWVkaWEsICJIVE1MVmlkZW9FbGVtZW50UGljdHVyZUlu
UGljdHVyZTo6cmVxdWVzdFBpY3R1cmVJblBpY3R1cmUiKTsKICAgICBpZiAoIXZpZGVvRWxlbWVu
dC5wbGF5ZXIoKSB8fCAhdmlkZW9FbGVtZW50LnBsYXllcigpLT5zdXBwb3J0c1BpY3R1cmVJblBp
Y3R1cmUoKSkgewogICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90U3VwcG9ydGVkRXJyb3IpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgaWYgKHZpZGVvRWxlbWVudC5yZWFkeVN0YXRl
KCkgPT0gSFRNTE1lZGlhRWxlbWVudEVudW1zOjpIQVZFX05PVEhJTkcpIHsKLSAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0
KEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIHZpZGVvIGVsZW1lbnQgaXMgbm90IHJlYWR5IHRvIGVu
dGVyIHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBpZiAoIXZpZGVvRWxlbWVudC52aWRl
b1RyYWNrcygpIHx8ICF2aWRlb0VsZW1lbnQudmlkZW9UcmFja3MoKS0+bGVuZ3RoKCkpIHsKLSAg
ICAgICAgcHJvbWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yKTsKKyAgICAgICAgcHJvbWlz
ZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIHZpZGVvIGVsZW1lbnQgZG9lcyBub3Qg
aGF2ZSBhIHZpZGVvIHRyYWNrIG9yIGl0IGhhcyBub3QgZGV0ZWN0ZWQgYSB2aWRlbyB0cmFjayB5
ZXQuIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKIAogICAgIGJvb2wgdXNlckFj
dGl2YXRpb25SZXF1aXJlZCA9ICF2aWRlb0VsZW1lbnQuZG9jdW1lbnQoKS5waWN0dXJlSW5QaWN0
dXJlRWxlbWVudCgpOwogICAgIGlmICh1c2VyQWN0aXZhdGlvblJlcXVpcmVkICYmICFVc2VyR2Vz
dHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpIHsKLSAgICAgICAgcHJvbWlz
ZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvcik7CisgICAgICAgIHByb21pc2UtPnJlamVjdChOb3RB
bGxvd2VkRXJyb3IsICJUaGUgcmVxdWVzdCBpcyBub3QgdHJpZ2dlcmVkIGJ5IGEgdXNlciBhY3Rp
dmF0aW9uLiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgaWYgKHZpZGVvRWxlbWVu
dC5kb2N1bWVudCgpLnBpY3R1cmVJblBpY3R1cmVFbGVtZW50KCkgPT0gJnZpZGVvRWxlbWVudCkg
ewotICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9yKTsKKyAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGlzIGFscmVh
ZHkgaW4gdGhlIFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQogCiAgICAgYXV0byB2aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlID0gSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmZyb20odmlkZW9FbGVtZW50KTsKICAgICBpZiAodmlk
ZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS0+bV9lbnRlclBpY3R1cmVJblBpY3R1cmVQcm9taXNl
IHx8IHZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUtPm1fZXhpdFBpY3R1cmVJblBpY3R1cmVQ
cm9taXNlKSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IpOworICAg
ICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9yLCAiVGhlIHZpZGVvIGVsZW1lbnQg
aXMgcHJvY2Vzc2luZyBhIFBpY3R1cmUtaW4tUGljdHVyZSByZXF1ZXN0LiIpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCkBAIC0xMDEsNyArMTA5LDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZTo6cmVxdWVzdFBpY3R1cmVJblBpY3R1cmUoSFRNTFZpZGVvRWxlbWVu
dCYKICAgICAgICAgdmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS0+bV9lbnRlclBpY3R1cmVJ
blBpY3R1cmVQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKTsKICAgICAgICAgdmlkZW9FbGVtZW50
LndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUoSFRNTFZpZGVvRWxlbWVudDo6VmlkZW9QcmVzZW50
YXRpb25Nb2RlOjpQaWN0dXJlSW5QaWN0dXJlKTsKICAgICB9IGVsc2UKLSAgICAgICAgcHJvbWlz
ZS0+cmVqZWN0KE5vdFN1cHBvcnRlZEVycm9yKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5v
dFN1cHBvcnRlZEVycm9yLCAiVGhlIHZpZGVvIGVsZW1lbnQgZG9lcyBub3Qgc3VwcG9ydCB0aGUg
UGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CiB9CiAKIGJvb2wgSFRNTFZpZGVvRWxlbWVudFBp
Y3R1cmVJblBpY3R1cmU6OmF1dG9QaWN0dXJlSW5QaWN0dXJlKEhUTUxWaWRlb0VsZW1lbnQmIHZp
ZGVvRWxlbWVudCkKQEAgLTEyNiw2ICsxMzQsNyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0
dXJlSW5QaWN0dXJlOjpzZXREaXNhYmxlUGljdHVyZUluUGljdHVyZShIVE1MVmlkZW9FbGVtZQog
CiB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpleGl0UGljdHVyZUluUGlj
dHVyZShSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiB7CisgICAgSU5GT19MT0coTE9H
SURFTlRJRklFUik7CiAgICAgaWYgKG1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZSB8fCBt
X2V4aXRQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZSkgewogICAgICAgICBwcm9taXNlLT5yZWplY3Qo
Tm90QWxsb3dlZEVycm9yKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTM3LDYgKzE0Niw3IEBAIHZv
aWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmV4aXRQaWN0dXJlSW5QaWN0dXJl
KFJlZjxEZWZlcnJlZFByb21pc2U+CiAKIHZvaWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBp
Y3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGljdHVyZSgpCiB7CisgICAgSU5GT19MT0coTE9HSURF
TlRJRklFUik7CiAgICAgbV92aWRlb0VsZW1lbnQuZG9jdW1lbnQoKS5zZXRQaWN0dXJlSW5QaWN0
dXJlRWxlbWVudCgmbV92aWRlb0VsZW1lbnQpOwogICAgIGlmIChtX2VudGVyUGljdHVyZUluUGlj
dHVyZVByb21pc2UpIHsKICAgICAgICAgbV9lbnRlclBpY3R1cmVJblBpY3R1cmVQcm9taXNlLT5y
ZXNvbHZlKCk7CkBAIC0xNDYsNiArMTU2LDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVy
ZUluUGljdHVyZTo6ZGlkRW50ZXJQaWN0dXJlSW5QaWN0dXJlKCkKIAogdm9pZCBIVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZTo6ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUoKQogeworICAg
IElORk9fTE9HKExPR0lERU5USUZJRVIpOwogICAgIG1fdmlkZW9FbGVtZW50LmRvY3VtZW50KCku
c2V0UGljdHVyZUluUGljdHVyZUVsZW1lbnQobnVsbHB0cik7CiAgICAgaWYgKG1fZXhpdFBpY3R1
cmVJblBpY3R1cmVQcm9taXNlKSB7CiAgICAgICAgIG1fZXhpdFBpY3R1cmVJblBpY3R1cmVQcm9t
aXNlLT5yZXNvbHZlKCk7CkBAIC0xNTMsNiArMTY0LDEzIEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVu
dFBpY3R1cmVJblBpY3R1cmU6OmRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkKICAgICB9CiB9CiAK
KyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKK1dURkxvZ0NoYW5uZWwmIEhUTUxWaWRlb0VsZW1l
bnRQaWN0dXJlSW5QaWN0dXJlOjpsb2dDaGFubmVsKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTG9n
TWVkaWE7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8g
RU5BQkxFKFBJQ1RVUkVfSU5fUElDVFVSRV9BUEkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1
cmUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZS5oCmluZGV4IDUzMTFjMDJmYzY4Li42NzkwMDA3MTlhMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxW
aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmgKQEAg
LTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIuaCIKICNp
bmNsdWRlICJTdXBwbGVtZW50YWJsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4KKyNp
bmNsdWRlIDx3dGYvTG9nZ2VySGVscGVyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAt
NDAsNyArNDEsMTEgQEAgY2xhc3MgUGljdHVyZUluUGljdHVyZVdpbmRvdzsKIAogY2xhc3MgSFRN
TFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUKICAgICA6IHB1YmxpYyBTdXBwbGVtZW50PEhU
TUxWaWRlb0VsZW1lbnQ+Ci0gICAgLCBwdWJsaWMgUGljdHVyZUluUGljdHVyZU9ic2VydmVyIHsK
KyAgICAsIHB1YmxpYyBQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIKKyNpZiAhUkVMRUFTRV9MT0df
RElTQUJMRUQKKyAgICAsIHByaXZhdGUgTG9nZ2VySGVscGVyCisjZW5kaWYKK3sKICAgICBXVEZf
TUFLRV9JU09fQUxMT0NBVEVEKEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKTsKIHB1
YmxpYzoKICAgICBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZShIVE1MVmlkZW9FbGVt
ZW50Jik7CkBAIC01OCw2ICs2MywxMyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRFbnRlclBpY3R1
cmVJblBpY3R1cmUoKTsKICAgICB2b2lkIGRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCk7CiAKKyNp
ZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAgICBjb25zdCBMb2dnZXImIGxvZ2dlcigpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuICptX2xvZ2dlci5nZXQoKTsgfQorICAgIGNvbnN0IHZvaWQqIGxvZ0lk
ZW50aWZpZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2xvZ0lkZW50aWZpZXI7IH0KKyAgICBj
b25zdCBjaGFyKiBsb2dDbGFzc05hbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAiSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmUiOyB9CisgICAgV1RGTG9nQ2hhbm5lbCYgbG9nQ2hhbm5l
bCgpIGNvbnN0IGZpbmFsOworI2VuZGlmCisKIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGNo
YXIqIHN1cHBsZW1lbnROYW1lKCkgeyByZXR1cm4gIkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5Q
aWN0dXJlIjsgfQogCkBAIC02Nyw2ICs3OSwxMSBAQCBwcml2YXRlOgogICAgIEhUTUxWaWRlb0Vs
ZW1lbnQmIG1fdmlkZW9FbGVtZW50OwogICAgIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+IG1fZW50
ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZTsKICAgICBSZWZQdHI8RGVmZXJyZWRQcm9taXNlPiBt
X2V4aXRQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZTsKKworI2lmICFSRUxFQVNFX0xPR19ESVNBQkxF
RAorICAgIFJlZlB0cjxMb2dnZXI+IG1fbG9nZ2VyOworICAgIGNvbnN0IHZvaWQqIG1fbG9nSWRl
bnRpZmllcjsKKyNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>
<flag name="review"
          id="397099"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381349</attachid>
            <date>2019-10-18 17:06:26 -0700</date>
            <delta_ts>2019-10-22 12:41:03 -0700</delta_ts>
            <desc>A revised patch</desc>
            <filename>202774.patch</filename>
            <type>text/plain</type>
            <size>9087</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ZTJjODBlOGM5NC4uNTc1YTA4MDdjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxOS0xMC0xOCAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29tPgor
CisgICAgICAgIFtQaWN0dXJlLWluLVBpY3R1cmUgV2ViIEFQSV0gVGhlIGltcGxlbWVudGF0aW9u
IG5lZWRzIHJ1bnRpbWUgbG9nZ2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAyNzc0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NjI2NjkzNz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPbmx5IGFk
ZCBsb2dnaW5nLCBubyBuZXcgdGVzdHMgbmVlZGVkLgorCisgICAgICAgICogTW9kdWxlcy9waWN0
dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpIVE1MVmlkZW9F
bGVtZW50UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZTo6fkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpyZXF1
ZXN0UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGlj
dHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVy
ZTo6ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmxvZ0NoYW5uZWwgY29uc3QpOgorICAgICAgICAqIE1v
ZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5o
OgorCiAyMDE5LTEwLTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGVwcmVjYXRlIEFjdGl2ZURPTU9iamVjdDo6Y2FuU3VzcGVuZEZvckRvY3VtZW50U3VzcGVu
c2lvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1
cmUvSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJl
LmNwcAppbmRleCBkZjk2MGIyOTM3OS4uODUxM2U5ODQ3YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUlu
UGljdHVyZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJl
L0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcApAQCAtMzEsNiArMzEsNyBAQAog
CiAjaW5jbHVkZSAiSFRNTFZpZGVvRWxlbWVudC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURl
ZmVycmVkLmgiCisjaW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1
cmVXaW5kb3cuaCIKICNpbmNsdWRlICJWaWRlb1RyYWNrTGlzdC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CkBAIC00MSwxMiArNDIsMTggQEAgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRF9JTVBMKEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKTsKIAogSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJl
KEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCkKICAgICA6IG1fdmlkZW9FbGVtZW50KHZp
ZGVvRWxlbWVudCkKKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAgICAsIG1fbG9nZ2VyKHZp
ZGVvRWxlbWVudC5kb2N1bWVudCgpLmxvZ2dlcigpKQorICAgICwgbV9sb2dJZGVudGlmaWVyKHVu
aXF1ZUxvZ0lkZW50aWZpZXIoKSkKKyNlbmRpZgogeworICAgIEFMV0FZU19MT0coTE9HSURFTlRJ
RklFUik7CiAgICAgbV92aWRlb0VsZW1lbnQuc2V0UGljdHVyZUluUGljdHVyZU9ic2VydmVyKHRo
aXMpOwogfQogCiBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6fkhUTUxWaWRlb0Vs
ZW1lbnRQaWN0dXJlSW5QaWN0dXJlKCkKIHsKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIp
OwogICAgIG1fdmlkZW9FbGVtZW50LnNldFBpY3R1cmVJblBpY3R1cmVPYnNlcnZlcihudWxscHRy
KTsKIH0KIApAQCAtNjMsNDUgKzcwLDU0IEBAIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0
dXJlKiBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZnJvbShIVE1MVmlkCiAKIHZv
aWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OnJlcXVlc3RQaWN0dXJlSW5QaWN0
dXJlKEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgUmVmPERlZmVycmVkUHJvbWlzZT4m
JiBwcm9taXNlKQogeworICAgIExPRyhNZWRpYSwgIkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5Q
aWN0dXJlOjpyZXF1ZXN0UGljdHVyZUluUGljdHVyZSIpOwogICAgIGlmICghdmlkZW9FbGVtZW50
LnBsYXllcigpIHx8ICF2aWRlb0VsZW1lbnQucGxheWVyKCktPnN1cHBvcnRzUGljdHVyZUluUGlj
dHVyZSgpKSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChOb3RTdXBwb3J0ZWRFcnJvcik7Cisg
ICAgICAgIExPRyhNZWRpYSwgIlRoZSB2aWRlbyBlbGVtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhl
IFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIpOworICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90
U3VwcG9ydGVkRXJyb3IsICJUaGUgdmlkZW8gZWxlbWVudCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBQ
aWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAg
IGlmICh2aWRlb0VsZW1lbnQucmVhZHlTdGF0ZSgpID09IEhUTUxNZWRpYUVsZW1lbnRFbnVtczo6
SEFWRV9OT1RISU5HKSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChJbnZhbGlkU3RhdGVFcnJv
cik7CisgICAgICAgIExPRyhNZWRpYSwgIlRoZSB2aWRlbyBlbGVtZW50IGlzIG5vdCByZWFkeSB0
byBlbnRlciB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CisgICAgICAgIHByb21pc2Ut
PnJlamVjdChJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGlzIG5vdCByZWFk
eSB0byBlbnRlciB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgaWYgKCF2aWRlb0VsZW1l
bnQudmlkZW9UcmFja3MoKSB8fCAhdmlkZW9FbGVtZW50LnZpZGVvVHJhY2tzKCktPmxlbmd0aCgp
KSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChJbnZhbGlkU3RhdGVFcnJvcik7CisgICAgICAg
IExPRyhNZWRpYSwgIlRoZSB2aWRlbyBlbGVtZW50IGRvZXMgbm90IGhhdmUgYSB2aWRlbyB0cmFj
ayBvciBpdCBoYXMgbm90IGRldGVjdGVkIGEgdmlkZW8gdHJhY2sgeWV0LiIpOworICAgICAgICBw
cm9taXNlLT5yZWplY3QoSW52YWxpZFN0YXRlRXJyb3IsICJUaGUgdmlkZW8gZWxlbWVudCBkb2Vz
IG5vdCBoYXZlIGEgdmlkZW8gdHJhY2sgb3IgaXQgaGFzIG5vdCBkZXRlY3RlZCBhIHZpZGVvIHRy
YWNrIHlldC4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICNlbmRpZgogCiAgICAgYm9vbCB1
c2VyQWN0aXZhdGlvblJlcXVpcmVkID0gIXZpZGVvRWxlbWVudC5kb2N1bWVudCgpLnBpY3R1cmVJ
blBpY3R1cmVFbGVtZW50KCk7CiAgICAgaWYgKHVzZXJBY3RpdmF0aW9uUmVxdWlyZWQgJiYgIVVz
ZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgewotICAgICAgICBw
cm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9yKTsKKyAgICAgICAgTE9HKE1lZGlhLCAiVGhl
IHJlcXVlc3QgaXMgbm90IHRyaWdnZXJlZCBieSBhIHVzZXIgYWN0aXZhdGlvbi4iKTsKKyAgICAg
ICAgcHJvbWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvciwgIlRoZSByZXF1ZXN0IGlzIG5vdCB0
cmlnZ2VyZWQgYnkgYSB1c2VyIGFjdGl2YXRpb24uIik7CiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKICAgICBpZiAodmlkZW9FbGVtZW50LmRvY3VtZW50KCkucGljdHVyZUluUGljdHVyZUVsZW1l
bnQoKSA9PSAmdmlkZW9FbGVtZW50KSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChOb3RBbGxv
d2VkRXJyb3IpOworICAgICAgICBMT0coTWVkaWEsICJUaGUgdmlkZW8gZWxlbWVudCBpcyBhbHJl
YWR5IGluIHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsKKyAgICAgICAgcHJvbWlzZS0+
cmVqZWN0KE5vdEFsbG93ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGlzIGFscmVhZHkgaW4g
dGhlIFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQog
CiAgICAgYXV0byB2aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlID0gSFRNTFZpZGVvRWxlbWVu
dFBpY3R1cmVJblBpY3R1cmU6OmZyb20odmlkZW9FbGVtZW50KTsKICAgICBpZiAodmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZS0+bV9lbnRlclBpY3R1cmVJblBpY3R1cmVQcm9taXNlIHx8IHZp
ZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUtPm1fZXhpdFBpY3R1cmVJblBpY3R1cmVQcm9taXNl
KSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IpOworICAgICAgICBM
T0coTWVkaWEsICJUaGUgdmlkZW8gZWxlbWVudCBpcyBwcm9jZXNzaW5nIGEgUGljdHVyZS1pbi1Q
aWN0dXJlIHJlcXVlc3QuIik7CisgICAgICAgIHByb21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJy
b3IsICJUaGUgdmlkZW8gZWxlbWVudCBpcyBwcm9jZXNzaW5nIGEgUGljdHVyZS1pbi1QaWN0dXJl
IHJlcXVlc3QuIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBpZiAodmlkZW9FbGVt
ZW50LndlYmtpdFN1cHBvcnRzUHJlc2VudGF0aW9uTW9kZShIVE1MVmlkZW9FbGVtZW50OjpWaWRl
b1ByZXNlbnRhdGlvbk1vZGU6OlBpY3R1cmVJblBpY3R1cmUpKSB7CiAgICAgICAgIHZpZGVvRWxl
bWVudFBpY3R1cmVJblBpY3R1cmUtPm1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZSA9IFdU
Rk1vdmUocHJvbWlzZSk7CiAgICAgICAgIHZpZGVvRWxlbWVudC53ZWJraXRTZXRQcmVzZW50YXRp
b25Nb2RlKEhUTUxWaWRlb0VsZW1lbnQ6OlZpZGVvUHJlc2VudGF0aW9uTW9kZTo6UGljdHVyZUlu
UGljdHVyZSk7Ci0gICAgfSBlbHNlCi0gICAgICAgIHByb21pc2UtPnJlamVjdChOb3RTdXBwb3J0
ZWRFcnJvcik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgTE9HKE1lZGlhLCAiVGhlIHZpZGVvIGVs
ZW1lbnQgZG9lcyBub3Qgc3VwcG9ydCB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7Cisg
ICAgICAgIHByb21pc2UtPnJlamVjdChOb3RTdXBwb3J0ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVt
ZW50IGRvZXMgbm90IHN1cHBvcnQgdGhlIFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIpOworICAg
IH0KIH0KIAogYm9vbCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6YXV0b1BpY3R1
cmVJblBpY3R1cmUoSFRNTFZpZGVvRWxlbWVudCYgdmlkZW9FbGVtZW50KQpAQCAtMTI2LDYgKzE0
Miw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OnNldERpc2FibGVQ
aWN0dXJlSW5QaWN0dXJlKEhUTUxWaWRlb0VsZW1lCiAKIHZvaWQgSFRNTFZpZGVvRWxlbWVudFBp
Y3R1cmVJblBpY3R1cmU6OmV4aXRQaWN0dXJlSW5QaWN0dXJlKFJlZjxEZWZlcnJlZFByb21pc2U+
JiYgcHJvbWlzZSkKIHsKKyAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKICAgICBpZiAobV9l
bnRlclBpY3R1cmVJblBpY3R1cmVQcm9taXNlIHx8IG1fZXhpdFBpY3R1cmVJblBpY3R1cmVQcm9t
aXNlKSB7CiAgICAgICAgIHByb21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IpOwogICAgICAg
ICByZXR1cm47CkBAIC0xMzcsNiArMTU0LDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVy
ZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBpY3R1cmUoUmVmPERlZmVycmVkUHJvbWlzZT4KIAog
dm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZGlkRW50ZXJQaWN0dXJlSW5Q
aWN0dXJlKCkKIHsKKyAgICBJTkZPX0xPRyhMT0dJREVOVElGSUVSKTsKICAgICBtX3ZpZGVvRWxl
bWVudC5kb2N1bWVudCgpLnNldFBpY3R1cmVJblBpY3R1cmVFbGVtZW50KCZtX3ZpZGVvRWxlbWVu
dCk7CiAgICAgaWYgKG1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZSkgewogICAgICAgICBt
X2VudGVyUGljdHVyZUluUGljdHVyZVByb21pc2UtPnJlc29sdmUoKTsKQEAgLTE0Niw2ICsxNjQs
NyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpkaWRFbnRlclBpY3R1
cmVJblBpY3R1cmUoKQogCiB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpk
aWRFeGl0UGljdHVyZUluUGljdHVyZSgpCiB7CisgICAgSU5GT19MT0coTE9HSURFTlRJRklFUik7
CiAgICAgbV92aWRlb0VsZW1lbnQuZG9jdW1lbnQoKS5zZXRQaWN0dXJlSW5QaWN0dXJlRWxlbWVu
dChudWxscHRyKTsKICAgICBpZiAobV9leGl0UGljdHVyZUluUGljdHVyZVByb21pc2UpIHsKICAg
ICAgICAgbV9leGl0UGljdHVyZUluUGljdHVyZVByb21pc2UtPnJlc29sdmUoKTsKQEAgLTE1Myw2
ICsxNzIsMTMgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZGlkRXhp
dFBpY3R1cmVJblBpY3R1cmUoKQogICAgIH0KIH0KIAorI2lmICFSRUxFQVNFX0xPR19ESVNBQkxF
RAorV1RGTG9nQ2hhbm5lbCYgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmxvZ0No
YW5uZWwoKSBjb25zdAoreworICAgIHJldHVybiBMb2dNZWRpYTsKK30KKyNlbmRpZgorCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoUElDVFVSRV9JTl9QSUNUVVJF
X0FQSSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVy
ZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmgK
aW5kZXggNTMxMWMwMmZjNjguLjI5MjgzMGJhMTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1
cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZp
ZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUuaApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUg
IlBpY3R1cmVJblBpY3R1cmVPYnNlcnZlci5oIgogI2luY2x1ZGUgIlN1cHBsZW1lbnRhYmxlLmgi
CiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvYy5oPgorI2luY2x1ZGUgPHd0Zi9Mb2dnZXJIZWxwZXIu
aD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC00MCw3ICs0MSwxMSBAQCBjbGFzcyBQaWN0
dXJlSW5QaWN0dXJlV2luZG93OwogCiBjbGFzcyBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGlj
dHVyZQogICAgIDogcHVibGljIFN1cHBsZW1lbnQ8SFRNTFZpZGVvRWxlbWVudD4KLSAgICAsIHB1
YmxpYyBQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIgeworICAgICwgcHVibGljIFBpY3R1cmVJblBp
Y3R1cmVPYnNlcnZlcgorI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAorICAgICwgcHJpdmF0ZSBM
b2dnZXJIZWxwZXIKKyNlbmRpZgorewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoSFRNTFZp
ZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUpOwogcHVibGljOgogICAgIEhUTUxWaWRlb0VsZW1l
bnRQaWN0dXJlSW5QaWN0dXJlKEhUTUxWaWRlb0VsZW1lbnQmKTsKQEAgLTU4LDYgKzYzLDEzIEBA
IHB1YmxpYzoKICAgICB2b2lkIGRpZEVudGVyUGljdHVyZUluUGljdHVyZSgpOwogICAgIHZvaWQg
ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUoKTsKIAorI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAor
ICAgIGNvbnN0IExvZ2dlciYgbG9nZ2VyKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9sb2dnZXIu
Z2V0KCk7IH0KKyAgICBjb25zdCB2b2lkKiBsb2dJZGVudGlmaWVyKCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CisgICAgY29uc3QgY2hhciogbG9nQ2xhc3NOYW1lKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gIkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlIjsg
fQorICAgIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5uZWwoKSBjb25zdCBmaW5hbDsKKyNlbmRpZgor
CiBwcml2YXRlOgogICAgIHN0YXRpYyBjb25zdCBjaGFyKiBzdXBwbGVtZW50TmFtZSgpIHsgcmV0
dXJuICJIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZSI7IH0KIApAQCAtNjcsNiArNzks
MTEgQEAgcHJpdmF0ZToKICAgICBIVE1MVmlkZW9FbGVtZW50JiBtX3ZpZGVvRWxlbWVudDsKICAg
ICBSZWZQdHI8RGVmZXJyZWRQcm9taXNlPiBtX2VudGVyUGljdHVyZUluUGljdHVyZVByb21pc2U7
CiAgICAgUmVmUHRyPERlZmVycmVkUHJvbWlzZT4gbV9leGl0UGljdHVyZUluUGljdHVyZVByb21p
c2U7CisKKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAgICBSZWY8Y29uc3QgTG9nZ2VyPiBt
X2xvZ2dlcjsKKyAgICBjb25zdCB2b2lkKiBtX2xvZ0lkZW50aWZpZXI7CisjZW5kaWYKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>381584</attachid>
            <date>2019-10-22 12:41:05 -0700</date>
            <delta_ts>2019-10-22 14:28:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202774-20191022124104.patch</filename>
            <type>text/plain</type>
            <size>8507</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxMzAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWJhYjJlMGE5NDM0MzBi
ZTQ2YmM4NmYyYTY3NTE1Y2YwMDFmOWU2Yi4uZmE3NTYyYTgwZDg4ZjEzODBjMTg2MGYwZTEyZWY4
NWZlNTJiM2M2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE5LTEwLTIyICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgW1BpY3R1cmUtaW4tUGljdHVy
ZSBXZWIgQVBJXSBUaGUgaW1wbGVtZW50YXRpb24gbmVlZHMgcnVudGltZSBsb2dnaW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI3NzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgcnVudGltZSBs
b2dnaW5nLCBubyBuZXcgdGVzdHMgbmVlZGVkLgorCisgICAgICAgICogTW9kdWxlcy9waWN0dXJl
aW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpIVE1MVmlkZW9FbGVt
ZW50UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZTo6fkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpyZXF1ZXN0
UGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50UGlj
dHVyZUluUGljdHVyZTo6ZXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGljdHVy
ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6
ZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFZpZGVvRWxl
bWVudFBpY3R1cmVJblBpY3R1cmU6OmxvZ0NoYW5uZWwgY29uc3QpOgorICAgICAgICAqIE1vZHVs
ZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oOgor
CiAyMDE5LTEwLTE3ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAgICB0
ZXhJbWFnZTJEIGZvciBhIGhhbGYtZmxvYXQgdGV4dHVyZSBvbmx5IGFjY2VwdHMgbnVsbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRl
b0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGlj
dHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5jcHAKaW5kZXgg
ZGY5NjBiMjkzNzliMjNiOTYyZDIwMjk5Y2IwMTQ2ODJiNTVjNmIwNi4uNzM1ZTQwM2IxNjFkYzlk
Y2Q0ZTA3NzNmNmU1OTM2MjRhNTgyMjliZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9waWN0dXJlaW5waWN0dXJlL0hUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmUuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAKICNpbmNsdWRl
ICJIVE1MVmlkZW9FbGVtZW50LmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
KyNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiUGljdHVyZUluUGljdHVyZVdpbmRvdy5o
IgogI2luY2x1ZGUgIlZpZGVvVHJhY2tMaXN0LmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lu
bGluZXMuaD4KQEAgLTQxLDEyICs0MiwxOCBAQCBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwo
SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUpOwogCiBIVE1MVmlkZW9FbGVtZW50UGlj
dHVyZUluUGljdHVyZTo6SFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUoSFRNTFZpZGVv
RWxlbWVudCYgdmlkZW9FbGVtZW50KQogICAgIDogbV92aWRlb0VsZW1lbnQodmlkZW9FbGVtZW50
KQorI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAorICAgICwgbV9sb2dnZXIodmlkZW9FbGVtZW50
LmRvY3VtZW50KCkubG9nZ2VyKCkpCisgICAgLCBtX2xvZ0lkZW50aWZpZXIodW5pcXVlTG9nSWRl
bnRpZmllcigpKQorI2VuZGlmCiB7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSKTsKICAg
ICBtX3ZpZGVvRWxlbWVudC5zZXRQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIodGhpcyk7CiB9CiAK
IEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjp+SFRNTFZpZGVvRWxlbWVudFBpY3R1
cmVJblBpY3R1cmUoKQogeworICAgIEFMV0FZU19MT0coTE9HSURFTlRJRklFUik7CiAgICAgbV92
aWRlb0VsZW1lbnQuc2V0UGljdHVyZUluUGljdHVyZU9ic2VydmVyKG51bGxwdHIpOwogfQogCkBA
IC02NCwzNiArNzEsMzYgQEAgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUqIEhUTUxW
aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpmcm9tKEhUTUxWaWQKIHZvaWQgSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OnJlcXVlc3RQaWN0dXJlSW5QaWN0dXJlKEhUTUxWaWRl
b0VsZW1lbnQmIHZpZGVvRWxlbWVudCwgUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQog
ewogICAgIGlmICghdmlkZW9FbGVtZW50LnBsYXllcigpIHx8ICF2aWRlb0VsZW1lbnQucGxheWVy
KCktPnN1cHBvcnRzUGljdHVyZUluUGljdHVyZSgpKSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVj
dChOb3RTdXBwb3J0ZWRFcnJvcik7CisgICAgICAgIHByb21pc2UtPnJlamVjdChOb3RTdXBwb3J0
ZWRFcnJvciwgIlRoZSB2aWRlbyBlbGVtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhlIFBpY3R1cmUt
aW4tUGljdHVyZSBtb2RlLiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgaWYgKHZp
ZGVvRWxlbWVudC5yZWFkeVN0YXRlKCkgPT0gSFRNTE1lZGlhRWxlbWVudEVudW1zOjpIQVZFX05P
VEhJTkcpIHsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yKTsKKyAg
ICAgICAgcHJvbWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIHZpZGVvIGVsZW1l
bnQgaXMgbm90IHJlYWR5IHRvIGVudGVyIHRoZSBQaWN0dXJlLWluLVBpY3R1cmUgbW9kZS4iKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBp
ZiAoIXZpZGVvRWxlbWVudC52aWRlb1RyYWNrcygpIHx8ICF2aWRlb0VsZW1lbnQudmlkZW9UcmFj
a3MoKS0+bGVuZ3RoKCkpIHsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVy
cm9yKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIHZp
ZGVvIGVsZW1lbnQgZG9lcyBub3QgaGF2ZSBhIHZpZGVvIHRyYWNrIG9yIGl0IGhhcyBub3QgZGV0
ZWN0ZWQgYSB2aWRlbyB0cmFjayB5ZXQuIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5k
aWYKIAogICAgIGJvb2wgdXNlckFjdGl2YXRpb25SZXF1aXJlZCA9ICF2aWRlb0VsZW1lbnQuZG9j
dW1lbnQoKS5waWN0dXJlSW5QaWN0dXJlRWxlbWVudCgpOwogICAgIGlmICh1c2VyQWN0aXZhdGlv
blJlcXVpcmVkICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJl
KCkpIHsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvcik7CisgICAgICAg
IHByb21pc2UtPnJlamVjdChOb3RBbGxvd2VkRXJyb3IsICJUaGUgcmVxdWVzdCBpcyBub3QgdHJp
Z2dlcmVkIGJ5IGEgdXNlciBhY3RpdmF0aW9uLiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQog
CiAgICAgaWYgKHZpZGVvRWxlbWVudC5kb2N1bWVudCgpLnBpY3R1cmVJblBpY3R1cmVFbGVtZW50
KCkgPT0gJnZpZGVvRWxlbWVudCkgewotICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dl
ZEVycm9yKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdEFsbG93ZWRFcnJvciwgIlRoZSB2
aWRlbyBlbGVtZW50IGlzIGFscmVhZHkgaW4gdGhlIFBpY3R1cmUtaW4tUGljdHVyZSBtb2RlLiIp
OwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgYXV0byB2aWRlb0VsZW1lbnRQaWN0dXJl
SW5QaWN0dXJlID0gSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmZyb20odmlkZW9F
bGVtZW50KTsKICAgICBpZiAodmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS0+bV9lbnRlclBp
Y3R1cmVJblBpY3R1cmVQcm9taXNlIHx8IHZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUtPm1f
ZXhpdFBpY3R1cmVJblBpY3R1cmVQcm9taXNlKSB7Ci0gICAgICAgIHByb21pc2UtPnJlamVjdChO
b3RBbGxvd2VkRXJyb3IpOworICAgICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9y
LCAiVGhlIHZpZGVvIGVsZW1lbnQgaXMgcHJvY2Vzc2luZyBhIFBpY3R1cmUtaW4tUGljdHVyZSBy
ZXF1ZXN0LiIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0xMDEsNyArMTA4LDcgQEAg
dm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6cmVxdWVzdFBpY3R1cmVJblBp
Y3R1cmUoSFRNTFZpZGVvRWxlbWVudCYKICAgICAgICAgdmlkZW9FbGVtZW50UGljdHVyZUluUGlj
dHVyZS0+bV9lbnRlclBpY3R1cmVJblBpY3R1cmVQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKTsK
ICAgICAgICAgdmlkZW9FbGVtZW50LndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUoSFRNTFZpZGVv
RWxlbWVudDo6VmlkZW9QcmVzZW50YXRpb25Nb2RlOjpQaWN0dXJlSW5QaWN0dXJlKTsKICAgICB9
IGVsc2UKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KE5vdFN1cHBvcnRlZEVycm9yKTsKKyAgICAg
ICAgcHJvbWlzZS0+cmVqZWN0KE5vdFN1cHBvcnRlZEVycm9yLCAiVGhlIHZpZGVvIGVsZW1lbnQg
ZG9lcyBub3Qgc3VwcG9ydCB0aGUgUGljdHVyZS1pbi1QaWN0dXJlIG1vZGUuIik7CiB9CiAKIGJv
b2wgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmF1dG9QaWN0dXJlSW5QaWN0dXJl
KEhUTUxWaWRlb0VsZW1lbnQmIHZpZGVvRWxlbWVudCkKQEAgLTEyNiw2ICsxMzMsNyBAQCB2b2lk
IEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpzZXREaXNhYmxlUGljdHVyZUluUGlj
dHVyZShIVE1MVmlkZW9FbGVtZQogCiB2b2lkIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0
dXJlOjpleGl0UGljdHVyZUluUGljdHVyZShSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2Up
CiB7CisgICAgSU5GT19MT0coTE9HSURFTlRJRklFUik7CiAgICAgaWYgKG1fZW50ZXJQaWN0dXJl
SW5QaWN0dXJlUHJvbWlzZSB8fCBtX2V4aXRQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZSkgewogICAg
ICAgICBwcm9taXNlLT5yZWplY3QoTm90QWxsb3dlZEVycm9yKTsKICAgICAgICAgcmV0dXJuOwpA
QCAtMTM3LDYgKzE0NSw3IEBAIHZvaWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6
OmV4aXRQaWN0dXJlSW5QaWN0dXJlKFJlZjxEZWZlcnJlZFByb21pc2U+CiAKIHZvaWQgSFRNTFZp
ZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEVudGVyUGljdHVyZUluUGljdHVyZSgpCiB7
CisgICAgSU5GT19MT0coTE9HSURFTlRJRklFUik7CiAgICAgbV92aWRlb0VsZW1lbnQuZG9jdW1l
bnQoKS5zZXRQaWN0dXJlSW5QaWN0dXJlRWxlbWVudCgmbV92aWRlb0VsZW1lbnQpOwogICAgIGlm
IChtX2VudGVyUGljdHVyZUluUGljdHVyZVByb21pc2UpIHsKICAgICAgICAgbV9lbnRlclBpY3R1
cmVJblBpY3R1cmVQcm9taXNlLT5yZXNvbHZlKCk7CkBAIC0xNDYsNiArMTU1LDcgQEAgdm9pZCBI
VE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZGlkRW50ZXJQaWN0dXJlSW5QaWN0dXJl
KCkKIAogdm9pZCBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZTo6ZGlkRXhpdFBpY3R1
cmVJblBpY3R1cmUoKQogeworICAgIElORk9fTE9HKExPR0lERU5USUZJRVIpOwogICAgIG1fdmlk
ZW9FbGVtZW50LmRvY3VtZW50KCkuc2V0UGljdHVyZUluUGljdHVyZUVsZW1lbnQobnVsbHB0cik7
CiAgICAgaWYgKG1fZXhpdFBpY3R1cmVJblBpY3R1cmVQcm9taXNlKSB7CiAgICAgICAgIG1fZXhp
dFBpY3R1cmVJblBpY3R1cmVQcm9taXNlLT5yZXNvbHZlKCk7CkBAIC0xNTMsNiArMTYzLDEzIEBA
IHZvaWQgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmU6OmRpZEV4aXRQaWN0dXJlSW5Q
aWN0dXJlKCkKICAgICB9CiB9CiAKKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKK1dURkxvZ0No
YW5uZWwmIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlOjpsb2dDaGFubmVsKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gTG9nTWVkaWE7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFBJQ1RVUkVfSU5fUElDVFVSRV9BUEkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BpY3R1cmVpbnBpY3R1cmUvSFRNTFZpZGVv
RWxlbWVudFBpY3R1cmVJblBpY3R1cmUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGljdHVy
ZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oCmluZGV4IDUzMTFj
MDJmYzY4YTIyNjI0YjljMjc0YjU3NDljZDc0ZDA5M2QxODMuLjI5MjgzMGJhMTAxNDc1MWMxYzYw
Mzk2OWZmMjEwZDZjYWI0OTY5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
cGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGljdHVyZWlucGljdHVyZS9IVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZS5oCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiUGljdHVyZUlu
UGljdHVyZU9ic2VydmVyLmgiCiAjaW5jbHVkZSAiU3VwcGxlbWVudGFibGUuaCIKICNpbmNsdWRl
IDx3dGYvSXNvTWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL0xvZ2dlckhlbHBlci5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQwLDcgKzQxLDExIEBAIGNsYXNzIFBpY3R1cmVJblBpY3R1
cmVXaW5kb3c7CiAKIGNsYXNzIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlCiAgICAg
OiBwdWJsaWMgU3VwcGxlbWVudDxIVE1MVmlkZW9FbGVtZW50PgotICAgICwgcHVibGljIFBpY3R1
cmVJblBpY3R1cmVPYnNlcnZlciB7CisgICAgLCBwdWJsaWMgUGljdHVyZUluUGljdHVyZU9ic2Vy
dmVyCisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgLCBwcml2YXRlIExvZ2dlckhlbHBl
cgorI2VuZGlmCit7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZSk7CiBwdWJsaWM6CiAgICAgSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJ
blBpY3R1cmUoSFRNTFZpZGVvRWxlbWVudCYpOwpAQCAtNTgsNiArNjMsMTMgQEAgcHVibGljOgog
ICAgIHZvaWQgZGlkRW50ZXJQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgdm9pZCBkaWRFeGl0UGlj
dHVyZUluUGljdHVyZSgpOwogCisjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgY29uc3Qg
TG9nZ2VyJiBsb2dnZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2xvZ2dlci5nZXQoKTsgfQor
ICAgIGNvbnN0IHZvaWQqIGxvZ0lkZW50aWZpZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2xv
Z0lkZW50aWZpZXI7IH0KKyAgICBjb25zdCBjaGFyKiBsb2dDbGFzc05hbWUoKSBjb25zdCBmaW5h
bCB7IHJldHVybiAiSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUiOyB9CisgICAgV1RG
TG9nQ2hhbm5lbCYgbG9nQ2hhbm5lbCgpIGNvbnN0IGZpbmFsOworI2VuZGlmCisKIHByaXZhdGU6
CiAgICAgc3RhdGljIGNvbnN0IGNoYXIqIHN1cHBsZW1lbnROYW1lKCkgeyByZXR1cm4gIkhUTUxW
aWRlb0VsZW1lbnRQaWN0dXJlSW5QaWN0dXJlIjsgfQogCkBAIC02Nyw2ICs3OSwxMSBAQCBwcml2
YXRlOgogICAgIEhUTUxWaWRlb0VsZW1lbnQmIG1fdmlkZW9FbGVtZW50OwogICAgIFJlZlB0cjxE
ZWZlcnJlZFByb21pc2U+IG1fZW50ZXJQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZTsKICAgICBSZWZQ
dHI8RGVmZXJyZWRQcm9taXNlPiBtX2V4aXRQaWN0dXJlSW5QaWN0dXJlUHJvbWlzZTsKKworI2lm
ICFSRUxFQVNFX0xPR19ESVNBQkxFRAorICAgIFJlZjxjb25zdCBMb2dnZXI+IG1fbG9nZ2VyOwor
ICAgIGNvbnN0IHZvaWQqIG1fbG9nSWRlbnRpZmllcjsKKyNlbmRpZgogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>