<?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>219810</bug_id>
          
          <creation_ts>2020-12-11 16:07:49 -0800</creation_ts>
          <short_desc>[Cocoa] Add Experimental Vorbis support</short_desc>
          <delta_ts>2020-12-20 22:18:02 -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="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1714142</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-12-11 16:07:49 -0800</bug_when>
    <thetext>Add experimental Vorbis support</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714143</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-11 16:08:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/72242614&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714151</commentid>
    <comment_count>2</comment_count>
      <attachid>416063</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-12-11 16:16:29 -0800</bug_when>
    <thetext>Created attachment 416063
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714155</commentid>
    <comment_count>3</comment_count>
      <attachid>416063</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-12-11 16:19:52 -0800</bug_when>
    <thetext>Comment on attachment 416063
Patch

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

&gt; Source/WebCore/page/RuntimeEnabledFeatures.h:399
&gt; +    bool m_VorbisDecoderEnabled { false };

Nit: the capitalization here is weird.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714157</commentid>
    <comment_count>4</comment_count>
      <attachid>416066</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-12-11 16:23:06 -0800</bug_when>
    <thetext>Created attachment 416066
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714193</commentid>
    <comment_count>5</comment_count>
      <attachid>416066</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-12-11 17:18:45 -0800</bug_when>
    <thetext>Comment on attachment 416066
Patch

Clearing flags on attachment: 416066

Committed r270722: &lt;https://trac.webkit.org/changeset/270722&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1714194</commentid>
    <comment_count>6</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2020-12-11 17:18:47 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715910</commentid>
    <comment_count>7</comment_count>
      <attachid>416066</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-12-19 11:11:34 -0800</bug_when>
    <thetext>Comment on attachment 416066
Patch

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

&gt; Source/WebCore/platform/graphics/cocoa/WebMAudioUtilitiesCocoa.mm:181
&gt; +    if (!RuntimeEnabledFeatures::sharedFeatures().vorbisDecoderEnabled())
&gt; +        return false;

Hey Eric, this is a layering violation in WebCore. By rule, you cannot use the RuntimeEnabledFeatures in the platform/ part of WebCore (platform is the platform abstraction layer and therefore should not be directly influence by WebCore level concepts like this). 

The pattern I suggest for things like this having the platform level classes provide some configuration options (much like any API would) and having the parts of WebCore outside the platform directory that need to use platform concepts pass in setting state using those configuration options.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715983</commentid>
    <comment_count>8</comment_count>
      <attachid>416066</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-12-20 22:18:02 -0800</bug_when>
    <thetext>Comment on attachment 416066
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/cocoa/WebMAudioUtilitiesCocoa.mm:181
&gt;&gt; +        return false;
&gt; 
&gt; Hey Eric, this is a layering violation in WebCore. By rule, you cannot use the RuntimeEnabledFeatures in the platform/ part of WebCore (platform is the platform abstraction layer and therefore should not be directly influence by WebCore level concepts like this). 
&gt; 
&gt; The pattern I suggest for things like this having the platform level classes provide some configuration options (much like any API would) and having the parts of WebCore outside the platform directory that need to use platform concepts pass in setting state using those configuration options.

Oops! 

https://bugs.webkit.org/show_bug.cgi?id=220052 cleans this up a bit.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416063</attachid>
            <date>2020-12-11 16:16:29 -0800</date>
            <delta_ts>2020-12-11 16:23:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219810-20201211161628.patch</filename>
            <type>text/plain</type>
            <size>7781</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDM0ZDQwOTM2ZjBmNDVjMmE5ZGExODcx
ZmY0OTc5MmUxMzM4ZDk0NWUuLmMyZTJmOGU5Yzk1OWZhNTQ0YjI0MWEzOTk1OWQ1NDI2OWI2NzVj
ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMTItMTEgIEVyaWMgQ2FybHNvbiAgPGVyaWMu
Y2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBBZGQgRXhwZXJpbWVudGFsIFZv
cmJpcyBzdXBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTk4MTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcyMjQyNjE0PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9QcmVmZXJl
bmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sOiBBZGRlZCBhbiBleHBlcmltZW50
YWwgd2ViCisgICAgICAgIHByZWZlcmVuY2UuCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxl
Q29jb2EuaDogRGVmaW5lIEVOQUJMRV9WT1JCSVMuCisKIDIwMjAtMTItMTAgIEpvaG4gV2lsYW5k
ZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CiAKICAgICAgICAgUENNOiBUdXJuIGZlYXR1cmUgb24g
YnkgZGVmYXVsdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFkZDMwZjhmNWEwMGUxZjZjNTVlMjg0NDk1NjMxYWJk
ZWNhMGM3MWEuLjc5MGE1MTYyMGJiOTNiNzc4YzU5OWE4MmMzZWRjZDYyNjBjOTRmMDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0xMi0xMSAgRXJpYyBDYXJsc29uICA8ZXJpYy5j
YXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIEFkZCBFeHBlcmltZW50YWwgVm9y
YmlzIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxOTgxMAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzIyNDI2MTQ+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNldFZvcmJpc0RlY29kZXJFbmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnZvcmJpc0RlY29kZXJFbmFibGVkIGNvbnN0KToKKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL1NvdXJjZUJ1ZmZlclBhcnNlcldlYk0uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUGFyc2VyV2ViTTo6QXVkaW9UcmFja0RhdGE6OmNvbnN1
bWVGcmFtZURhdGEpOiBTdXBwb3J0IGJlaW5nCisgICAgICAgIGNhbGxlZCB3aXRoIG1vcmUgdGhh
biBvbmUgc2FtcGxlLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViTUF1
ZGlvVXRpbGl0aWVzQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjppc1ZvcmJpc0RlY29kZXJB
dmFpbGFibGUpOiBDaGVjayB0aGUgcnVudGltZSBzZXR0aW5ncy4KKwogMjAyMC0xMi0xMSAgTWln
dWVsIEdvbWV6ICA8bWFnb21lekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI2
ODkyMyk6IFtXUEVdIE5vdGhpbmcgcmVuZGVycyBvbiB0aGUgcnBpMyB1c2luZyB0aGUgcHJvcHJp
ZXRhcnkgdmlkZW8gZHJpdmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVy
ZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0
cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCmluZGV4IGMwZGE2
YzhiN2Y3MDk1MGFmYTIwZTgwN2M0NDhmMmFhYjMzMjFlNjEuLmYzMWFmMzlkOGI1NzU5MzBmNTg3
NzdkYjlhMzA4MWEwY2YyNDA2OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVm
ZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCisrKyBiL1NvdXJjZS9XVEYv
U2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCkBAIC05
MDQsNiArOTA0LDE4IEBAIFZpc3VhbFZpZXdwb3J0QVBJRW5hYmxlZDoKICAgICBXZWJDb3JlOgog
ICAgICAgZGVmYXVsdDogZmFsc2UKIAorVm9yYmlzRGVjb2RlckVuYWJsZWQ6CisgIHR5cGU6IGJv
b2wKKyAgaHVtYW5SZWFkYWJsZU5hbWU6ICJWb3JiaXMgYXVkaW8gZGVjb2RlciIKKyAgaHVtYW5S
ZWFkYWJsZURlc2NyaXB0aW9uOiAiRW5hYmxlIFZvcmJpcyBhdWRpbyBkZWNvZGVyIgorICBjb25k
aXRpb246IEVOQUJMRShWT1JCSVMpCisgIHdlYmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzCisgIGRlZmF1bHRWYWx1ZToKKyAgICBXZWJLaXRMZWdhY3k6CisgICAgICBkZWZhdWx0
OiB0cnVlCisgICAgV2ViS2l0OgorICAgICAgZGVmYXVsdDogdHJ1ZQorCiAjIEZJWE1FOiBUaGlz
IGlzIGVuYWJsZWQgd2hlbiBFTkFCTEUoRVhQRVJJTUVOVEFMX0ZFQVRVUkVTKSBpcyB0cnVlIGlu
IFdlYktpdDIuIFBlcmhhcHMgd2Ugc2hvdWxkIGNvbnNpZGVyIHVzaW5nIHRoYXQgZm9yIFdlYktp
dExlZ2FjeSBhcyB3ZWxsLgogV2ViQW5pbWF0aW9uc0NvbXBvc2l0ZU9wZXJhdGlvbnNFbmFibGVk
OgogICB0eXBlOiBib29sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJs
ZUNvY29hLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgKaW5kZXggMTcz
ODRmYTFmYjA1NjJhMmM2OTdlYmMzMmQ0N2NiMWYwZWFlODhhOC4uNGU4MjAyOTdjYjUxNDNjY2Ux
OWEzNDE0NzliZTQyYTBiZTMxZTM2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUGxhdGZv
cm1FbmFibGVDb2NvYS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2Eu
aApAQCAtNjMwLDYgKzYzMCwxMCBAQAogI2RlZmluZSBFTkFCTEVfV0tQREZWSUVXIDEKICNlbmRp
ZgogCisjaWYgIWRlZmluZWQoRU5BQkxFX1ZPUkJJUykgJiYgUExBVEZPUk0oTUFDKSAmJiBfX01B
Q19PU19YX1ZFUlNJT05fTUFYX0FMTE9XRUQgPj0gMTEwMzAwCisjZGVmaW5lIEVOQUJMRV9WT1JC
SVMgMQorI2VuZGlmCisKICNpZiAhZGVmaW5lZChFTkFCTEVfU0VUX1dFQkNPTlRFTlRfUFJPQ0VT
U19JTkZPUk1BVElPTl9JTl9ORVRXT1JLX1BST0NFU1MpICYmIFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+IDEyMDAwMAogI2RlZmluZSBFTkFCTEVfU0VU
X1dFQkNPTlRFTlRfUFJPQ0VTU19JTkZPUk1BVElPTl9JTl9ORVRXT1JLX1BST0NFU1MgMQogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4
IDNiODMzNzI1OThiMzJiZTMwYjUxNDU4ZjM0Mjg3Njc5MjUxN2U5MTMuLmJmZmE0YmMzYjM2Y2Fj
MGFlZTAwMGIwMWY0NTljN2I1YjllMzA0ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yNTUsNiArMjU1LDExIEBAIHB1YmxpYzoKICAgICBi
b29sIGRpc2FibGVNZWRpYUV4cGVyaWVuY2VQSURJbmhlcml0YW5jZSgpIGNvbnN0IHsgcmV0dXJu
IG1fZGlzYWJsZU1lZGlhRXhwZXJpZW5jZVBJREluaGVyaXRhbmNlOyB9CiAjZW5kaWYKIAorI2lm
IEVOQUJMRShWT1JCSVMpCisgICAgdm9pZCBzZXRWb3JiaXNEZWNvZGVyRW5hYmxlZChib29sIGlz
RW5hYmxlZCkgeyBtX1ZvcmJpc0RlY29kZXJFbmFibGVkID0gaXNFbmFibGVkOyB9CisgICAgYm9v
bCB2b3JiaXNEZWNvZGVyRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fVm9yYmlzRGVjb2RlckVu
YWJsZWQ7IH0KKyNlbmRpZgorCiAjaWYgRU5BQkxFKFdFQl9BVVRITikKICAgICB2b2lkIHNldFdl
YkF1dGhlbnRpY2F0aW9uTW9kZXJuRW5hYmxlZChib29sIGFyZUVuYWJsZWQpIHsgbV9hcmVXZWJB
dXRoZW50aWNhdGlvbk1vZGVybkVuYWJsZWQgPSBhcmVFbmFibGVkOyB9CiAgICAgYm9vbCB3ZWJB
dXRoZW50aWNhdGlvbk1vZGVybkVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2FyZVdlYkF1dGhl
bnRpY2F0aW9uTW9kZXJuRW5hYmxlZDsgfQpAQCAtMzkwLDYgKzM5NSwxMCBAQCBwcml2YXRlOgog
ICAgIGJvb2wgbV9kaXNhYmxlTWVkaWFFeHBlcmllbmNlUElESW5oZXJpdGFuY2UgeyBmYWxzZSB9
OwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoVk9SQklTKQorICAgIGJvb2wgbV9Wb3JiaXNEZWNvZGVy
RW5hYmxlZCB7IGZhbHNlIH07CisjZW5kaWYKKwogI2lmIEVOQUJMRShXRUJfQVVUSE4pCiAgICAg
Ym9vbCBtX2FyZVdlYkF1dGhlbnRpY2F0aW9uTW9kZXJuRW5hYmxlZCB7IGZhbHNlIH07CiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1Nv
dXJjZUJ1ZmZlclBhcnNlcldlYk0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAKaW5kZXggOWI4ZmM2N2JlNzFhMGVl
YmRlZDkzOWYxNjMyOGQ1MDlmMDBmMjQ3Ny4uMDNhOTM4NjNhN2VhYzc5YTEzMTE0YWE3OTNjYmE5
NmZkN2E4ZWFkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAKQEAgLTEwNjUs
NyArMTA2NSw3IEBAIHZvaWQgU291cmNlQnVmZmVyUGFyc2VyV2ViTTo6VmlkZW9UcmFja0RhdGE6
OmNyZWF0ZVNhbXBsZUJ1ZmZlcihjb25zdCBDTVRpbWUmIHByCiAKIHdlYm06OlN0YXR1cyBTb3Vy
Y2VCdWZmZXJQYXJzZXJXZWJNOjpBdWRpb1RyYWNrRGF0YTo6Y29uc3VtZUZyYW1lRGF0YSh3ZWJt
OjpSZWFkZXImIHJlYWRlciwgY29uc3QgRnJhbWVNZXRhZGF0YSYgbWV0YWRhdGEsIHVpbnQ2NF90
KiBieXRlc1JlbWFpbmluZywgY29uc3QgQ01UaW1lJiBwcmVzZW50YXRpb25UaW1lLCBpbnQgc2Ft
cGxlQ291bnQpCiB7Ci0gICAgQVNTRVJUX1VOVVNFRChzYW1wbGVDb3VudCwgc2FtcGxlQ291bnQg
PT0gMSk7CisgICAgQVNTRVJUKHNhbXBsZUNvdW50KTsKIAogICAgIGlmICghZm9ybWF0RGVzY3Jp
cHRpb24oKSkgewogICAgICAgICBpZiAoIXRyYWNrKCkuY29kZWNfcHJpdmF0ZS5pc19wcmVzZW50
KCkpIHsKQEAgLTEwOTUsMTMgKzEwOTUsMTMgQEAgd2VibTo6U3RhdHVzIFNvdXJjZUJ1ZmZlclBh
cnNlcldlYk06OkF1ZGlvVHJhY2tEYXRhOjpjb25zdW1lRnJhbWVEYXRhKHdlYm06OlJlYWQKICAg
ICAgICAgc2V0Rm9ybWF0RGVzY3JpcHRpb24oV1RGTW92ZShmb3JtYXREZXNjcmlwdGlvbikpOwog
ICAgIH0KIAotICAgIGlmIChtX3BhY2tldERhdGEuaXNFbXB0eSgpKSB7Ci0gICAgICAgIG1fcGFj
a2V0RGF0YS5yZXNpemUobWV0YWRhdGEuc2l6ZSk7CisgICAgaWYgKG1fcGFja2V0RGVzY3JpcHRp
b25zLmlzRW1wdHkoKSkgewogICAgICAgICBtX3BhY2tldEJ5dGVzUmVhZCA9IDA7CiAgICAgICAg
IG1fYnl0ZU9mZnNldCA9IG1ldGFkYXRhLnBvc2l0aW9uOwogICAgICAgICBtX3NhbXBsZVByZXNl
bnRhdGlvblRpbWUgPSBwcmVzZW50YXRpb25UaW1lOwogICAgIH0KIAorICAgIG1fcGFja2V0RGF0
YS5yZXNpemUobV9wYWNrZXRCeXRlc1JlYWQgKyBtZXRhZGF0YS5zaXplKTsKICAgICBzaXplX3Qg
cGFja2V0RGF0YU9mZnNldCA9IG1fcGFja2V0Qnl0ZXNSZWFkOwogICAgIHNpemVfdCBieXRlc1Rv
UmVhZCA9IG1ldGFkYXRhLnNpemU7CiAgICAgd2hpbGUgKGJ5dGVzVG9SZWFkKSB7CkBAIC0xMTE3
LDcgKzExMTcsNyBAQCB3ZWJtOjpTdGF0dXMgU291cmNlQnVmZmVyUGFyc2VyV2ViTTo6QXVkaW9U
cmFja0RhdGE6OmNvbnN1bWVGcmFtZURhdGEod2VibTo6UmVhZAogICAgIH0KIAogICAgIG1fcGFj
a2V0RGVzY3JpcHRpb25zLmFwcGVuZCh7IHN0YXRpY19jYXN0PGludDY0X3Q+KHBhY2tldERhdGFP
ZmZzZXQpLCAwLCBzdGF0aWNfY2FzdDxVSW50MzI+KG1ldGFkYXRhLnNpemUpIH0pOwotICAgIGF1
dG8gc2FtcGxlRHVyYXRpb24gPSBDTVRpbWVHZXRTZWNvbmRzKENNVGltZVN1YnRyYWN0KHByZXNl
bnRhdGlvblRpbWUsIG1fc2FtcGxlUHJlc2VudGF0aW9uVGltZSkpICsgQ01UaW1lR2V0U2Vjb25k
cyhtX3BhY2tldER1cmF0aW9uKTsKKyAgICBhdXRvIHNhbXBsZUR1cmF0aW9uID0gQ01UaW1lR2V0
U2Vjb25kcyhDTVRpbWVTdWJ0cmFjdChwcmVzZW50YXRpb25UaW1lLCBtX3NhbXBsZVByZXNlbnRh
dGlvblRpbWUpKSArIENNVGltZUdldFNlY29uZHMobV9wYWNrZXREdXJhdGlvbikgKiBzYW1wbGVD
b3VudDsKICAgICBpZiAoc2FtcGxlRHVyYXRpb24gPj0gbV9taW5pbXVtU2FtcGxlRHVyYXRpb24p
CiAgICAgICAgIGNyZWF0ZVNhbXBsZUJ1ZmZlcigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJNQXVkaW9VdGlsaXRpZXNDb2NvYS5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYk1BdWRpb1V0aWxpdGll
c0NvY29hLm1tCmluZGV4IGYyNzNkY2UxNTdkY2VmNjJjZjVmZmE3NjkyMjk0YzkxZWMxYTZjZmQu
LjQxMzQ3OGY3ZmEyYmEzYjVlNTM1OGIyYTNhODA5Nzc4YmJlOWViNTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYk1BdWRpb1V0aWxpdGllc0Nv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYk1B
dWRpb1V0aWxpdGllc0NvY29hLm1tCkBAIC0zMSw2ICszMSw3IEBACiAjaW1wb3J0ICJDQUF1ZGlv
U3RyZWFtRGVzY3JpcHRpb24uaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgIk1lZGlh
VXRpbGl0aWVzLmgiCisjaW1wb3J0ICJSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgiCiAjaW1wb3J0
IDxBdWRpb1Rvb2xib3gvQXVkaW9Db21wb25lbnQuaD4KICNpbXBvcnQgPEF1ZGlvVG9vbGJveC9B
dWRpb0Zvcm1hdC5oPgogI2ltcG9ydCA8Q29yZU1lZGlhL0NNRm9ybWF0RGVzY3JpcHRpb24uaD4K
QEAgLTE3Niw2ICsxNzcsOSBAQCBib29sIGlzVm9yYmlzRGVjb2RlckF2YWlsYWJsZSgpCiAgICAg
c3RhdGljIGJvb2wgYXZhaWxhYmxlOwogCiAjaWYgRU5BQkxFKFZPUkJJUykgJiYgUExBVEZPUk0o
TUFDKQorICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS52
b3JiaXNEZWNvZGVyRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2VUb2tlbjsKICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlVG9r
ZW4sIF57CiAgICAgICAgIGF2YWlsYWJsZSA9IHJlZ2lzdGVyRGVjb2RlckZhY3RvcnkoIkFDVm9y
YmlzRGVjb2RlckZhY3RvcnkiLCAndm9yYicpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416066</attachid>
            <date>2020-12-11 16:23:06 -0800</date>
            <delta_ts>2020-12-11 17:18:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219810-20201211162305.patch</filename>
            <type>text/plain</type>
            <size>7771</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDM0ZDQwOTM2ZjBmNDVjMmE5ZGExODcx
ZmY0OTc5MmUxMzM4ZDk0NWUuLjBhNDc0YmUyODI1ZDg0MzFlNjFmMDc2OTMxNjExOTE3NTRjOTk0
MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMTItMTEgIEVyaWMgQ2FybHNvbiAgPGVyaWMu
Y2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBBZGQgRXhwZXJpbWVudGFsIFZv
cmJpcyBzdXBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTk4MTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcyMjQyNjE0PgorCisgICAgICAg
IFJldmlld2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMv
V2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbDogQWRkZWQgYW4gZXhwZXJpbWVudGFsIHdl
YgorICAgICAgICBwcmVmZXJlbmNlLgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZUNvY29h
Lmg6IERlZmluZSBFTkFCTEVfVk9SQklTLgorCiAyMDIwLTEyLTEwICBKb2huIFdpbGFuZGVyICA8
d2lsYW5kZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFBDTTogVHVybiBmZWF0dXJlIG9uIGJ5IGRl
ZmF1bHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCBhZGQzMGY4ZjVhMDBlMWY2YzU1ZTI4NDQ5NTYzMWFiZGVjYTBj
NzFhLi5mN2ZhNjEyZTcwZmI0MzM4ZWQ4YTA1M2Y3ZGRiYWFkYjI4MTM4ZWI0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMTItMTEgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNv
bkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBBZGQgRXhwZXJpbWVudGFsIFZvcmJpcyBz
dXBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTk4MTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcyMjQyNjE0PgorCisgICAgICAgIFJldmll
d2VkIGJ5IEplciBOb2JsZS4KKworICAgICAgICAqIHBhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5oOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0Vm9yYmlz
RGVjb2RlckVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJl
czo6dm9yYmlzRGVjb2RlckVuYWJsZWQgY29uc3QpOgorCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTb3VyY2VCdWZmZXJQYXJzZXJXZWJNOjpBdWRpb1RyYWNrRGF0YTo6Y29uc3VtZUZyYW1lRGF0
YSk6IFN1cHBvcnQgYmVpbmcKKyAgICAgICAgY2FsbGVkIHdpdGggbW9yZSB0aGFuIG9uZSBzYW1w
bGUuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJNQXVkaW9VdGlsaXRp
ZXNDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OmlzVm9yYmlzRGVjb2RlckF2YWlsYWJsZSk6
IENoZWNrIHRoZSBydW50aW1lIHNldHRpbmdzLgorCiAyMDIwLTEyLTExICBNaWd1ZWwgR29tZXog
IDxtYWdvbWV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMjY4OTIzKTogW1dQ
RV0gTm90aGluZyByZW5kZXJzIG9uIHRoZSBycGkzIHVzaW5nIHRoZSBwcm9wcmlldGFyeSB2aWRl
byBkcml2ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQ
cmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVu
Y2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKaW5kZXggYzBkYTZjOGI3ZjcwOTUw
YWZhMjBlODA3YzQ0OGYyYWFiMzMyMWU2MS4uZjMxYWYzOWQ4YjU3NTkzMGY1ODc3N2RiOWEzMDgx
YTBjZjI0MDY5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dl
YlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKKysrIGIvU291cmNlL1dURi9TY3JpcHRzL1By
ZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKQEAgLTkwNCw2ICs5MDQs
MTggQEAgVmlzdWFsVmlld3BvcnRBUElFbmFibGVkOgogICAgIFdlYkNvcmU6CiAgICAgICBkZWZh
dWx0OiBmYWxzZQogCitWb3JiaXNEZWNvZGVyRW5hYmxlZDoKKyAgdHlwZTogYm9vbAorICBodW1h
blJlYWRhYmxlTmFtZTogIlZvcmJpcyBhdWRpbyBkZWNvZGVyIgorICBodW1hblJlYWRhYmxlRGVz
Y3JpcHRpb246ICJFbmFibGUgVm9yYmlzIGF1ZGlvIGRlY29kZXIiCisgIGNvbmRpdGlvbjogRU5B
QkxFKFZPUkJJUykKKyAgd2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKKyAg
ZGVmYXVsdFZhbHVlOgorICAgIFdlYktpdExlZ2FjeToKKyAgICAgIGRlZmF1bHQ6IHRydWUKKyAg
ICBXZWJLaXQ6CisgICAgICBkZWZhdWx0OiB0cnVlCisKICMgRklYTUU6IFRoaXMgaXMgZW5hYmxl
ZCB3aGVuIEVOQUJMRShFWFBFUklNRU5UQUxfRkVBVFVSRVMpIGlzIHRydWUgaW4gV2ViS2l0Mi4g
UGVyaGFwcyB3ZSBzaG91bGQgY29uc2lkZXIgdXNpbmcgdGhhdCBmb3IgV2ViS2l0TGVnYWN5IGFz
IHdlbGwuCiBXZWJBbmltYXRpb25zQ29tcG9zaXRlT3BlcmF0aW9uc0VuYWJsZWQ6CiAgIHR5cGU6
IGJvb2wKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaCBi
L1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaAppbmRleCAxNzM4NGZhMWZiMDU2
MmEyYzY5N2ViYzMyZDQ3Y2IxZjBlYWU4OGE4Li40ZTgyMDI5N2NiNTE0M2NjZTE5YTM0MTQ3OWJl
NDJhMGJlMzFlMzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNv
Y29hLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCkBAIC02MzAs
NiArNjMwLDEwIEBACiAjZGVmaW5lIEVOQUJMRV9XS1BERlZJRVcgMQogI2VuZGlmCiAKKyNpZiAh
ZGVmaW5lZChFTkFCTEVfVk9SQklTKSAmJiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVS
U0lPTl9NQVhfQUxMT1dFRCA+PSAxMTAzMDAKKyNkZWZpbmUgRU5BQkxFX1ZPUkJJUyAxCisjZW5k
aWYKKwogI2lmICFkZWZpbmVkKEVOQUJMRV9TRVRfV0VCQ09OVEVOVF9QUk9DRVNTX0lORk9STUFU
SU9OX0lOX05FVFdPUktfUFJPQ0VTUykgJiYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZF
UlNJT05fTUlOX1JFUVVJUkVEID4gMTIwMDAwCiAjZGVmaW5lIEVOQUJMRV9TRVRfV0VCQ09OVEVO
VF9QUk9DRVNTX0lORk9STUFUSU9OX0lOX05FVFdPUktfUFJPQ0VTUyAxCiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKaW5kZXggM2I4MzM3MjU5
OGIzMmJlMzBiNTE0NThmMzQyODc2NzkyNTE3ZTkxMy4uMzVjZTBhOTgzYTdmNmNlM2VjNTBmYzZl
NzBhMzJiM2RkMTY4NmI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmgKQEAgLTI1NSw2ICsyNTUsMTEgQEAgcHVibGljOgogICAgIGJvb2wgZGlzYWJs
ZU1lZGlhRXhwZXJpZW5jZVBJREluaGVyaXRhbmNlKCkgY29uc3QgeyByZXR1cm4gbV9kaXNhYmxl
TWVkaWFFeHBlcmllbmNlUElESW5oZXJpdGFuY2U7IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFZP
UkJJUykKKyAgICB2b2lkIHNldFZvcmJpc0RlY29kZXJFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7
IG1fdm9yYmlzRGVjb2RlckVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KKyAgICBib29sIHZvcmJpc0Rl
Y29kZXJFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV92b3JiaXNEZWNvZGVyRW5hYmxlZDsgfQor
I2VuZGlmCisKICNpZiBFTkFCTEUoV0VCX0FVVEhOKQogICAgIHZvaWQgc2V0V2ViQXV0aGVudGlj
YXRpb25Nb2Rlcm5FbmFibGVkKGJvb2wgYXJlRW5hYmxlZCkgeyBtX2FyZVdlYkF1dGhlbnRpY2F0
aW9uTW9kZXJuRW5hYmxlZCA9IGFyZUVuYWJsZWQ7IH0KICAgICBib29sIHdlYkF1dGhlbnRpY2F0
aW9uTW9kZXJuRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJlV2ViQXV0aGVudGljYXRpb25N
b2Rlcm5FbmFibGVkOyB9CkBAIC0zOTAsNiArMzk1LDEwIEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X2Rpc2FibGVNZWRpYUV4cGVyaWVuY2VQSURJbmhlcml0YW5jZSB7IGZhbHNlIH07CiAjZW5kaWYK
IAorI2lmIEVOQUJMRShWT1JCSVMpCisgICAgYm9vbCBtX3ZvcmJpc0RlY29kZXJFbmFibGVkIHsg
ZmFsc2UgfTsKKyNlbmRpZgorCiAjaWYgRU5BQkxFKFdFQl9BVVRITikKICAgICBib29sIG1fYXJl
V2ViQXV0aGVudGljYXRpb25Nb2Rlcm5FbmFibGVkIHsgZmFsc2UgfTsKICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU291cmNlQnVmZmVy
UGFyc2VyV2ViTS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9T
b3VyY2VCdWZmZXJQYXJzZXJXZWJNLmNwcAppbmRleCA5YjhmYzY3YmU3MWEwZWViZGVkOTM5ZjE2
MzI4ZDUwOWYwMGYyNDc3Li4wM2E5Mzg2M2E3ZWFjNzlhMTMxMTRhYTc5M2NiYTk2ZmQ3YThlYWRi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Tb3Vy
Y2VCdWZmZXJQYXJzZXJXZWJNLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb2NvYS9Tb3VyY2VCdWZmZXJQYXJzZXJXZWJNLmNwcApAQCAtMTA2NSw3ICsxMDY1LDcg
QEAgdm9pZCBTb3VyY2VCdWZmZXJQYXJzZXJXZWJNOjpWaWRlb1RyYWNrRGF0YTo6Y3JlYXRlU2Ft
cGxlQnVmZmVyKGNvbnN0IENNVGltZSYgcHIKIAogd2VibTo6U3RhdHVzIFNvdXJjZUJ1ZmZlclBh
cnNlcldlYk06OkF1ZGlvVHJhY2tEYXRhOjpjb25zdW1lRnJhbWVEYXRhKHdlYm06OlJlYWRlciYg
cmVhZGVyLCBjb25zdCBGcmFtZU1ldGFkYXRhJiBtZXRhZGF0YSwgdWludDY0X3QqIGJ5dGVzUmVt
YWluaW5nLCBjb25zdCBDTVRpbWUmIHByZXNlbnRhdGlvblRpbWUsIGludCBzYW1wbGVDb3VudCkK
IHsKLSAgICBBU1NFUlRfVU5VU0VEKHNhbXBsZUNvdW50LCBzYW1wbGVDb3VudCA9PSAxKTsKKyAg
ICBBU1NFUlQoc2FtcGxlQ291bnQpOwogCiAgICAgaWYgKCFmb3JtYXREZXNjcmlwdGlvbigpKSB7
CiAgICAgICAgIGlmICghdHJhY2soKS5jb2RlY19wcml2YXRlLmlzX3ByZXNlbnQoKSkgewpAQCAt
MTA5NSwxMyArMTA5NSwxMyBAQCB3ZWJtOjpTdGF0dXMgU291cmNlQnVmZmVyUGFyc2VyV2ViTTo6
QXVkaW9UcmFja0RhdGE6OmNvbnN1bWVGcmFtZURhdGEod2VibTo6UmVhZAogICAgICAgICBzZXRG
b3JtYXREZXNjcmlwdGlvbihXVEZNb3ZlKGZvcm1hdERlc2NyaXB0aW9uKSk7CiAgICAgfQogCi0g
ICAgaWYgKG1fcGFja2V0RGF0YS5pc0VtcHR5KCkpIHsKLSAgICAgICAgbV9wYWNrZXREYXRhLnJl
c2l6ZShtZXRhZGF0YS5zaXplKTsKKyAgICBpZiAobV9wYWNrZXREZXNjcmlwdGlvbnMuaXNFbXB0
eSgpKSB7CiAgICAgICAgIG1fcGFja2V0Qnl0ZXNSZWFkID0gMDsKICAgICAgICAgbV9ieXRlT2Zm
c2V0ID0gbWV0YWRhdGEucG9zaXRpb247CiAgICAgICAgIG1fc2FtcGxlUHJlc2VudGF0aW9uVGlt
ZSA9IHByZXNlbnRhdGlvblRpbWU7CiAgICAgfQogCisgICAgbV9wYWNrZXREYXRhLnJlc2l6ZSht
X3BhY2tldEJ5dGVzUmVhZCArIG1ldGFkYXRhLnNpemUpOwogICAgIHNpemVfdCBwYWNrZXREYXRh
T2Zmc2V0ID0gbV9wYWNrZXRCeXRlc1JlYWQ7CiAgICAgc2l6ZV90IGJ5dGVzVG9SZWFkID0gbWV0
YWRhdGEuc2l6ZTsKICAgICB3aGlsZSAoYnl0ZXNUb1JlYWQpIHsKQEAgLTExMTcsNyArMTExNyw3
IEBAIHdlYm06OlN0YXR1cyBTb3VyY2VCdWZmZXJQYXJzZXJXZWJNOjpBdWRpb1RyYWNrRGF0YTo6
Y29uc3VtZUZyYW1lRGF0YSh3ZWJtOjpSZWFkCiAgICAgfQogCiAgICAgbV9wYWNrZXREZXNjcmlw
dGlvbnMuYXBwZW5kKHsgc3RhdGljX2Nhc3Q8aW50NjRfdD4ocGFja2V0RGF0YU9mZnNldCksIDAs
IHN0YXRpY19jYXN0PFVJbnQzMj4obWV0YWRhdGEuc2l6ZSkgfSk7Ci0gICAgYXV0byBzYW1wbGVE
dXJhdGlvbiA9IENNVGltZUdldFNlY29uZHMoQ01UaW1lU3VidHJhY3QocHJlc2VudGF0aW9uVGlt
ZSwgbV9zYW1wbGVQcmVzZW50YXRpb25UaW1lKSkgKyBDTVRpbWVHZXRTZWNvbmRzKG1fcGFja2V0
RHVyYXRpb24pOworICAgIGF1dG8gc2FtcGxlRHVyYXRpb24gPSBDTVRpbWVHZXRTZWNvbmRzKENN
VGltZVN1YnRyYWN0KHByZXNlbnRhdGlvblRpbWUsIG1fc2FtcGxlUHJlc2VudGF0aW9uVGltZSkp
ICsgQ01UaW1lR2V0U2Vjb25kcyhtX3BhY2tldER1cmF0aW9uKSAqIHNhbXBsZUNvdW50OwogICAg
IGlmIChzYW1wbGVEdXJhdGlvbiA+PSBtX21pbmltdW1TYW1wbGVEdXJhdGlvbikKICAgICAgICAg
Y3JlYXRlU2FtcGxlQnVmZmVyKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL1dlYk1BdWRpb1V0aWxpdGllc0NvY29hLm1tIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViTUF1ZGlvVXRpbGl0aWVzQ29jb2EubW0K
aW5kZXggZjI3M2RjZTE1N2RjZWY2MmNmNWZmYTc2OTIyOTRjOTFlYzFhNmNmZC4uNDEzNDc4Zjdm
YTJiYTNiNWU1MzU4YjJhM2E4MDk3NzhiYmU5ZWI1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViTUF1ZGlvVXRpbGl0aWVzQ29jb2EubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvV2ViTUF1ZGlvVXRpbGl0
aWVzQ29jb2EubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIkNBQXVkaW9TdHJlYW1EZXNj
cmlwdGlvbi5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiTWVkaWFVdGlsaXRpZXMu
aCIKKyNpbXBvcnQgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbXBvcnQgPEF1ZGlvVG9v
bGJveC9BdWRpb0NvbXBvbmVudC5oPgogI2ltcG9ydCA8QXVkaW9Ub29sYm94L0F1ZGlvRm9ybWF0
Lmg+CiAjaW1wb3J0IDxDb3JlTWVkaWEvQ01Gb3JtYXREZXNjcmlwdGlvbi5oPgpAQCAtMTc2LDYg
KzE3Nyw5IEBAIGJvb2wgaXNWb3JiaXNEZWNvZGVyQXZhaWxhYmxlKCkKICAgICBzdGF0aWMgYm9v
bCBhdmFpbGFibGU7CiAKICNpZiBFTkFCTEUoVk9SQklTKSAmJiBQTEFURk9STShNQUMpCisgICAg
aWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnZvcmJpc0RlY29k
ZXJFbmFibGVkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIHN0YXRpYyBkaXNwYXRj
aF9vbmNlX3Qgb25jZVRva2VuOwogICAgIGRpc3BhdGNoX29uY2UoJm9uY2VUb2tlbiwgXnsKICAg
ICAgICAgYXZhaWxhYmxlID0gcmVnaXN0ZXJEZWNvZGVyRmFjdG9yeSgiQUNWb3JiaXNEZWNvZGVy
RmFjdG9yeSIsICd2b3JiJyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>