<?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>211303</bug_id>
          
          <creation_ts>2020-05-01 10:44:35 -0700</creation_ts>
          <short_desc>WebGPU: copyTextureToTexture() has an implementation bug (src copy view info is used also as dst)</short_desc>
          <delta_ts>2020-05-04 11:00:47 -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>WebGPU</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>gvinals</reporter>
          <assigned_to>gvinals</assigned_to>
          <cc>changseok</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>graouts</cc>
    
    <cc>justin_fan</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1647913</commentid>
    <comment_count>0</comment_count>
    <who name="">gvinals</who>
    <bug_when>2020-05-01 10:44:35 -0700</bug_when>
    <thetext>Summary:
WebGPU: copyTextureToTexture() has an implementation bug (src copy view info is used also as dst).

See:
GPUCommandBufferMetal.mm#214,217

[blitEncoder()
        copyFromTexture:src.texture-&gt;platformTexture()
        sourceSlice:src.arrayLayer
        sourceLevel:src.mipLevel
        sourceOrigin:MTLOriginMake(src.origin.x, src.origin.y, src.origin.z)
        sourceSize:MTLSizeMake(size.width, size.height, size.depth)
        toTexture:dst.texture-&gt;platformTexture()
        destinationSlice:src.arrayLayer
        destinationLevel:src.mipLevel
        destinationOrigin:MTLOriginMake(dst.origin.x, dst.origin.y, dst.origin.z)];

In particular:
        destinationSlice:src.arrayLayer
        destinationLevel:src.mipLevel

Should be:
        destinationSlice:dst.arrayLayer
        destinationLevel:dst.mipLevel</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1647915</commentid>
    <comment_count>1</comment_count>
    <who name="">gvinals</who>
    <bug_when>2020-05-01 10:47:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/62266037&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648296</commentid>
    <comment_count>2</comment_count>
      <attachid>398302</attachid>
    <who name="">gvinals</who>
    <bug_when>2020-05-02 18:49:05 -0700</bug_when>
    <thetext>Created attachment 398302
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648363</commentid>
    <comment_count>3</comment_count>
      <attachid>398302</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-05-03 12:14:48 -0700</bug_when>
    <thetext>Comment on attachment 398302
Patch

Patch looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648593</commentid>
    <comment_count>4</comment_count>
      <attachid>398385</attachid>
    <who name="">gvinals</who>
    <bug_when>2020-05-04 10:13:41 -0700</bug_when>
    <thetext>Created attachment 398385
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648594</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-04 10:14:51 -0700</bug_when>
    <thetext>gvinals@apple.com does not have committer permissions according to https://trac.webkit.org/browser/webkit/trunk/Tools/Scripts/webkitpy/common/config/contributors.json.

Rejecting attachment 398385 from commit queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1648624</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-04 11:00:46 -0700</bug_when>
    <thetext>Committed r261089: &lt;https://trac.webkit.org/changeset/261089&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 398385.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398302</attachid>
            <date>2020-05-02 18:49:05 -0700</date>
            <delta_ts>2020-05-03 12:14:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211303-20200502184905.patch</filename>
            <type>text/plain</type>
            <size>10961</size>
            <attacher>gvinals</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmZmMDIyMmVlNzhmZjVk
YjE1MTJkZTIwNjc3YmI1YzI0N2YwY2NhMC4uNDBlM2UxM2RjMTIzNzJhYTI2YWNjNTU4ZDQ4ZTEy
YzZlNTZiMDdmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTA1LTAyICBHdWls
bGVtIFZpbmFscyAgPGd2aW5hbHNAYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdQVTogY29weVRl
eHR1cmVUb1RleHR1cmUoKSBoYXMgYW4gaW1wbGVtZW50YXRpb24gYnVnIChzcmMgY29weSB2aWV3
IGluZm8gaXMgdXNlZCBhbHNvIGFzIGRzdCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTMwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRlc3Q6IHdlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8t
dGV4dHVyZS5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BV
Q29tbWFuZEJ1ZmZlck1ldGFsLm1tOgorICAgICAgICAoV2ViQ29yZTo6R1BVQ29tbWFuZEJ1ZmZl
cjo6Y29weVRleHR1cmVUb1RleHR1cmUpOgorCiAyMDIwLTA1LTAyICBEYW5pZWwgQmF0ZXMgIDxk
YWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBQYWdlOjplZGl0YWJsZUVsZW1lbnRzSW5SZWN0
KCkgc2hvdWxkIHJldHVybiByb290IGVkaXRhYmxlIGVsZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVQ29tbWFuZEJ1ZmZlck1l
dGFsLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L2NvY29hL0dQVUNv
bW1hbmRCdWZmZXJNZXRhbC5tbQppbmRleCAzNjdkNjNkZjQ5NGZjOTBiYWNmNDkxYTAzNjg3MjQ3
ODQ2ZDU3NzRhLi4wN2ZjY2JlZTM3NWRmZDgxOTI0NTI3Y2VkODVlOTA4N2IzNWZjYjg4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVQ29t
bWFuZEJ1ZmZlck1ldGFsLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dwdS9jb2NvYS9HUFVDb21tYW5kQnVmZmVyTWV0YWwubW0KQEAgLTIyOSw4ICsyMjksOCBAQCB2
b2lkIEdQVUNvbW1hbmRCdWZmZXI6OmNvcHlUZXh0dXJlVG9UZXh0dXJlKEdQVVRleHR1cmVDb3B5
VmlldyYmIHNyYywgR1BVVGV4dHVyZQogICAgICAgICBzb3VyY2VPcmlnaW46TVRMT3JpZ2luTWFr
ZShzcmMub3JpZ2luLngsIHNyYy5vcmlnaW4ueSwgc3JjLm9yaWdpbi56KQogICAgICAgICBzb3Vy
Y2VTaXplOk1UTFNpemVNYWtlKHNpemUud2lkdGgsIHNpemUuaGVpZ2h0LCBzaXplLmRlcHRoKQog
ICAgICAgICB0b1RleHR1cmU6ZHN0LnRleHR1cmUtPnBsYXRmb3JtVGV4dHVyZSgpCi0gICAgICAg
IGRlc3RpbmF0aW9uU2xpY2U6c3JjLmFycmF5TGF5ZXIKLSAgICAgICAgZGVzdGluYXRpb25MZXZl
bDpzcmMubWlwTGV2ZWwKKyAgICAgICAgZGVzdGluYXRpb25TbGljZTpkc3QuYXJyYXlMYXllcgor
ICAgICAgICBkZXN0aW5hdGlvbkxldmVsOmRzdC5taXBMZXZlbAogICAgICAgICBkZXN0aW5hdGlv
bk9yaWdpbjpNVExPcmlnaW5NYWtlKGRzdC5vcmlnaW4ueCwgZHN0Lm9yaWdpbi55LCBkc3Qub3Jp
Z2luLnopXTsKIAogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWU0MGQw
MTM1MjM3ZTczNDE2ZDc0YjIwNmVmYmQ4MGNkN2I0Nzc5MS4uZWQ5NGE1MzMwY2VjMzIyMjAzMTQ2
YzQ0MTY2NmJmMjEyNTlmYWVmZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTA1LTAyICBH
dWlsbGVtIFZpbmFscyAgPGd2aW5hbHNAYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdQVTogY29w
eVRleHR1cmVUb1RleHR1cmUoKSBoYXMgYW4gaW1wbGVtZW50YXRpb24gYnVnIChzcmMgY29weSB2
aWV3IGluZm8gaXMgdXNlZCBhbHNvIGFzIGRzdCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTMwMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogd2ViZ3B1L2JsaXQtY29tbWFuZHMtdGV4dHVyZS10by10
ZXh0dXJlLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmdwdS9ibGl0LWNvbW1h
bmRzLXRleHR1cmUtdG8tdGV4dHVyZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWJncHUvanMv
d2ViZ3B1LWZ1bmN0aW9ucy5qczoKKyAgICAgICAgKGRyYXdHcmVlbk1pcENoYWluT25SZWRCYWNr
Z3JvdW5kSW5Tb2Z0d2FyZSk6CisKIDIwMjAtMDUtMDIgIERpZWdvIFBpbm8gR2FyY2lhICA8ZHBp
bm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtXUEVdIEdhcmRlbmluZywgc2V2ZXJhbCBX
ZWJHTCB0ZXN0cyBhcmUgZmFpbGluZyBhZnRlciByMjYxMDIzCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJncHUvYmxpdC1jb21tYW5kcy10ZXh0dXJlLXRvLXRleHR1cmUtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL3dlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0YzE5ZWVlNDZkZGU5MmJlNmE5Y2ZkNTA0YjBjYTQx
NzcyNzg4ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUvYmxpdC1jb21t
YW5kcy10ZXh0dXJlLXRvLXRleHR1cmUtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEwIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5IVE1MIFJlZmVy
ZW5jZSBGaWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSJqcy93ZWJncHUtZnVuY3Rpb25zLmpzIj48
L3NjcmlwdD4KKzxwPlBhc3MgaWYgc3F1YXJlIGNhbnZhcyBiZWxvdyBzaG93cyBhIGdyZWVuIG1p
cCBjaGFpbiBvbiBhIHJlZCBiYWNrZ3JvdW5kLjwvcD4KKzxjYW52YXMgd2lkdGg9IjUxMiIgaGVp
Z2h0PSI1MTIiPjwvY2FudmFzPgorPHNjcmlwdD4KK2NvbnN0IGNhbnZhcyA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoImNhbnZhcyIpOworZHJhd0dyZWVuTWlwQ2hhaW5PblJlZEJhY2tncm91bmRJ
blNvZnR3YXJlKGNhbnZhcyk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS5odG1sIGIvTGF5b3V0VGVzdHMv
d2ViZ3B1L2JsaXQtY29tbWFuZHMtdGV4dHVyZS10by10ZXh0dXJlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NDgxZmYxMzFmNzQyYWU5ZGY3YTQyOTU2NTI5OTVmNWQ4YTIzMjNiZAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS5o
dG1sCkBAIC0wLDAgKzEsMTc3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KKzx0aXRsZT5CbGl0dGluZyBUZXh0dXJlIFRvIFRleHR1cmU8L3RpdGxlPgorPG1ldGEg
bmFtZT0iYXNzZXJ0IiBjb250ZW50PSJCbGl0IG9wZXJhdGlvbnMgcG9wdWxhdGUgYSB0ZXh0dXJl
IGNvcnJlY3RseSAoYWxsIG1pcCBsZXZlbHMpLiI+Cis8bGluayByZWw9Im1hdGNoIiBocmVmPSJi
bGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS1leHBlY3RlZC5odG1sIj4KKzxwPlBhc3Mg
aWYgc3F1YXJlIGNhbnZhcyBiZWxvdyBzaG93cyBhIGdyZWVuIG1pcCBjaGFpbiBvbiBhIHJlZCBi
YWNrZ3JvdW5kLjwvcD4KKzxjYW52YXMgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiPjwvY2FudmFz
PgorPGJvZHk+Cis8c2NyaXB0IHNyYz0ianMvd2ViZ3B1LWZ1bmN0aW9ucy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOworCitmdW5jdGlvbiBsb2FkVGV4dHVyZUZyb21DYW52YXMyZChkZXZpY2UsIGNh
bnZhczJkKSB7CisgICAgY29uc3QgdGV4dHVyZVNpemUgPSB7CisgICAgICAgIHdpZHRoOiAgY2Fu
dmFzMmQud2lkdGgsCisgICAgICAgIGhlaWdodDogY2FudmFzMmQuaGVpZ2h0LAorICAgICAgICBk
ZXB0aDogIDEKKyAgICB9OworCisgICAgLy8gTWlwbWFwIGNvdW50CisgICAgbGV0IG1heFJlc29s
dXRpb24gPSBNYXRoLm1heChjYW52YXMyZC53aWR0aCwgY2FudmFzMmQuaGVpZ2h0KTsKKyAgICBs
ZXQgbWlwTGV2ZWxDb3VudCA9IE1hdGguY2VpbChNYXRoLmxvZzIobWF4UmVzb2x1dGlvbikpOwor
ICAgIGlmIChtaXBMZXZlbENvdW50IDwgMSkgbWlwTGV2ZWxDb3VudCA9IDE7CisKKyAgICBjb25z
dCB0ZXh0dXJlRGVzY3JpcHRvciA9IHsKKyAgICAgICAgc2l6ZTogdGV4dHVyZVNpemUsCisgICAg
ICAgIGFycmF5TGF5ZXJDb3VudDogMiwKKyAgICAgICAgbWlwTGV2ZWxDb3VudDogbWlwTGV2ZWxD
b3VudCwKKyAgICAgICAgc2FtcGxlQ291bnQ6IDEsCisgICAgICAgIGRpbWVuc2lvbjogIjJkIiwK
KyAgICAgICAgZm9ybWF0OiAicmdiYTh1bm9ybSIsCisgICAgICAgIHVzYWdlOiBHUFVUZXh0dXJl
VXNhZ2UuQ09QWV9TUkMgfCBHUFVUZXh0dXJlVXNhZ2UuQ09QWV9EU1QgfCBHUFVUZXh0dXJlVXNh
Z2UuU0FNUExFRCAKKyAgICB9OworCisgICAgLy8gQ3JlYXRlIHRleHR1cmUgYW5kIGFsc28gYWRk
IHRoZSBkZXNjcmlwdG9yCisgICAgY29uc3QgdGV4dHVyZSA9IGRldmljZS5jcmVhdGVUZXh0dXJl
KHRleHR1cmVEZXNjcmlwdG9yKTsKKyAgICB0ZXh0dXJlLmRlc2NyaXB0b3IgPSB0ZXh0dXJlRGVz
Y3JpcHRvcjsKKworICAgIC8vIFRleHR1cmUgZGF0YSAKKyAgICBjb25zdCBjb250ZXh0MmQgPSBj
YW52YXMyZC5nZXRDb250ZXh0KCcyZCcpOworICAgIGNvbnN0IGltYWdlRGF0YSA9IGNvbnRleHQy
ZC5nZXRJbWFnZURhdGEoMCwgMCwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhlaWdodCk7CisK
KyAgICBjb25zdCB0ZXh0dXJlRGF0YUJ1ZmZlckRlc2NyaXB0b3IgPSB7CisgICAgICAgIHNpemU6
IGltYWdlRGF0YS5kYXRhLmxlbmd0aCwKKyAgICAgICAgdXNhZ2U6IEdQVUJ1ZmZlclVzYWdlLkNP
UFlfU1JDCisgICAgfTsKKyAgICBjb25zdCBbdGV4dHVyZURhdGFCdWZmZXIsIHRleHR1cmVBcnJh
eUJ1ZmZlcl0gPSBkZXZpY2UuY3JlYXRlQnVmZmVyTWFwcGVkKHRleHR1cmVEYXRhQnVmZmVyRGVz
Y3JpcHRvcik7CisgICAgCisgICAgY29uc3QgdGV4dHVyZVdyaXRlQXJyYXkgPSBuZXcgVWludDhB
cnJheSh0ZXh0dXJlQXJyYXlCdWZmZXIpOworICAgIHRleHR1cmVXcml0ZUFycmF5LnNldChpbWFn
ZURhdGEuZGF0YSk7CisgICAgdGV4dHVyZURhdGFCdWZmZXIudW5tYXAoKTsKKworICAgIGNvbnN0
IGRhdGFDb3B5VmlldyA9IHsKKyAgICAgICAgYnVmZmVyOiB0ZXh0dXJlRGF0YUJ1ZmZlciwKKyAg
ICAgICAgb2Zmc2V0OiAwLAorICAgICAgICByb3dQaXRjaDogY2FudmFzMmQud2lkdGggKiA0LAor
ICAgICAgICBpbWFnZUhlaWdodDogMAorICAgIH07CisgICAgY29uc3QgdGV4dHVyZUNvcHlWaWV3
ID0geworICAgICAgICB0ZXh0dXJlOiB0ZXh0dXJlLAorICAgICAgICBtaXBMZXZlbDogMCwKKyAg
ICAgICAgYXJyYXlMYXllcjogMCwKKyAgICAgICAgb3JpZ2luOiB7IHg6IDAsIHk6IDAsIHo6IDAg
fQorICAgIH07CisKKyAgICBjb25zdCBibGl0Q29tbWFuZEVuY29kZXIgPSBkZXZpY2UuY3JlYXRl
Q29tbWFuZEVuY29kZXIoKTsKKyAgICBibGl0Q29tbWFuZEVuY29kZXIuY29weUJ1ZmZlclRvVGV4
dHVyZShkYXRhQ29weVZpZXcsIHRleHR1cmVDb3B5VmlldywgdGV4dHVyZVNpemUpOworICAgIGRl
dmljZS5nZXRRdWV1ZSgpLnN1Ym1pdChbYmxpdENvbW1hbmRFbmNvZGVyLmZpbmlzaCgpXSk7CisK
KyAgICByZXR1cm4gdGV4dHVyZTsKK30KKworYXN5bmMgZnVuY3Rpb24gdGVzdChkZXZpY2UpIHsK
KyAgICBjb25zdCBjYW52YXMyZCAgPSBhd2FpdCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJjYW52
YXMiKTsKKyAgICBjb25zdCBjb250ZXh0MmQgPSBjYW52YXMyZC5nZXRDb250ZXh0KCcyZCcpOwor
CisgICAgLy8gdGV4dHVyZUEgKGxheWVyIDAsIG1pcCAwKTogR3JlZW4KKyAgICBjb250ZXh0MmQu
ZmlsbFN0eWxlID0gJ3JnYigwLCAyNTUsIDApJzsKKyAgICBjb250ZXh0MmQuZmlsbFJlY3QoMCwg
MCwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhlaWdodCk7CisgICAgY29uc3QgdGV4dHVyZUEg
PSBsb2FkVGV4dHVyZUZyb21DYW52YXMyZChkZXZpY2UsIGNhbnZhczJkKTsKKworICAgIC8vIHRl
eHR1cmVCIChsYXllciAwLCBtaXAgMCk6IFJlZAorICAgIGNvbnRleHQyZC5maWxsU3R5bGUgPSAn
cmdiKDI1NSwgMCwgMCknOworICAgIGNvbnRleHQyZC5maWxsUmVjdCgwLCAwLCBjYW52YXMyZC53
aWR0aCwgY2FudmFzMmQuaGVpZ2h0KTsKKyAgICBjb25zdCB0ZXh0dXJlQiA9IGxvYWRUZXh0dXJl
RnJvbUNhbnZhczJkKGRldmljZSwgY2FudmFzMmQpOyAKKworICAgIC8vIENsZWFuIGNhbnZhcyB0
byBibHVlCisgICAgY29udGV4dDJkLmZpbGxTdHlsZSA9ICdyZ2IoMCwgMCwgMjU1KSc7CisgICAg
Y29udGV4dDJkLmZpbGxSZWN0KDAsIDAsIGNhbnZhczJkLndpZHRoLCBjYW52YXMyZC5oZWlnaHQp
OworCisgICAgLy8gVGVzdCBjb3B5VGV4dHVyZVRvVGV4dHVyZQorCisgICAgbGV0IHNpemUgPSBP
YmplY3QuYXNzaWduKHt9LCB0ZXh0dXJlQS5kZXNjcmlwdG9yLnNpemUpOworICAgIGxldCBibGl0
Q29tbWFuZEVuY29kZXIgPSBkZXZpY2UuY3JlYXRlQ29tbWFuZEVuY29kZXIoKTsKKyAgICBmb3Ig
KHZhciBpID0gMTsgaSA8IHRleHR1cmVBLmRlc2NyaXB0b3IubWlwTGV2ZWxDb3VudDsgKytpKSB7
CisgICAgICAgIHNpemUud2lkdGggID0gTWF0aC5tYXgoTWF0aC5mbG9vcihzaXplLndpZHRoIC8g
MiksIDEpOworICAgICAgICBzaXplLmhlaWdodCA9IE1hdGgubWF4KE1hdGguZmxvb3Ioc2l6ZS5o
ZWlnaHQgLyAyKSwgMSk7CisKKyAgICAgICAgbGV0IHNyY1RleHR1cmVDb3B5VmlldyA9IHsKKyAg
ICAgICAgICAgIHRleHR1cmU6IHRleHR1cmVBLAorICAgICAgICAgICAgbWlwTGV2ZWw6IDAsCisg
ICAgICAgICAgICBhcnJheUxheWVyOiAwLAorICAgICAgICAgICAgb3JpZ2luOiB7IHg6IDAsIHk6
IDAsIHo6IDAgfQorICAgICAgICB9OworICAgICAgICBsZXQgZHN0VGV4dHVyZUNvcHlWaWV3ID0g
eworICAgICAgICAgICAgdGV4dHVyZTogdGV4dHVyZUEsCisgICAgICAgICAgICBtaXBMZXZlbDog
aSwKKyAgICAgICAgICAgIGFycmF5TGF5ZXI6IDEsCisgICAgICAgICAgICBvcmlnaW46IHsgeDog
MCwgeTogMCwgejogMCB9CisgICAgICAgIH07CisgICAgICAgIC8vIFBvcHVsYXRlIHRleHR1cmVB
IChsYXllciAxLCBtaXAgaSkKKyAgICAgICAgYmxpdENvbW1hbmRFbmNvZGVyLmNvcHlUZXh0dXJl
VG9UZXh0dXJlKHNyY1RleHR1cmVDb3B5VmlldywgZHN0VGV4dHVyZUNvcHlWaWV3LCBzaXplKTsK
KworICAgICAgICBzcmNUZXh0dXJlQ29weVZpZXcgPSB7CisgICAgICAgICAgICB0ZXh0dXJlOiB0
ZXh0dXJlQSwKKyAgICAgICAgICAgIG1pcExldmVsOiBpLAorICAgICAgICAgICAgYXJyYXlMYXll
cjogMSwKKyAgICAgICAgICAgIG9yaWdpbjogeyB4OiAwLCB5OiAwLCB6OiAwIH0KKyAgICAgICAg
fTsKKyAgICAgICAgZHN0VGV4dHVyZUNvcHlWaWV3ID0geworICAgICAgICAgICAgdGV4dHVyZTog
dGV4dHVyZUIsCisgICAgICAgICAgICBtaXBMZXZlbDogMCwKKyAgICAgICAgICAgIGFycmF5TGF5
ZXI6IDAsCisgICAgICAgICAgICBvcmlnaW46IHsgeDogMCwgeTogc2l6ZS5oZWlnaHQsIHo6IDAg
fQorICAgICAgICB9OworICAgICAgICAvLyBQb3B1bGF0ZSB0ZXh0dXJlQiAobGF5ZXIgMCwgbWlw
IDApIHdpdGggdGV4dHVyZUEgKGxheWVyIDEsIG1pcCBpKQorICAgICAgICBibGl0Q29tbWFuZEVu
Y29kZXIuY29weVRleHR1cmVUb1RleHR1cmUoc3JjVGV4dHVyZUNvcHlWaWV3LCBkc3RUZXh0dXJl
Q29weVZpZXcsIHNpemUpOworICAgIH0KKworICAgIC8vIFJlbmRlciB0ZXh0dXJlQiBpbnRvIGNh
bnZhczJkCisKKyAgICBjb25zdCBpbWFnZURhdGFMZW5ndGhJbkJ5dGVzID0gY2FudmFzMmQud2lk
dGggKiBjYW52YXMyZC5oZWlnaHQgKiA0OworICAgIGNvbnN0IGJ1ZmZlckRlc2NyaXB0b3IgPSB7
CisgICAgICAgIHNpemU6IGltYWdlRGF0YUxlbmd0aEluQnl0ZXMsCisgICAgICAgIHVzYWdlOiBH
UFVCdWZmZXJVc2FnZS5DT1BZX0RTVCB8IEdQVUJ1ZmZlclVzYWdlLk1BUF9SRUFECisgICAgfTsK
KyAgICBjb25zdCBidWZmZXJBID0gZGV2aWNlLmNyZWF0ZUJ1ZmZlcihidWZmZXJEZXNjcmlwdG9y
KTsKKworICAgIGNvbnN0IGJ1ZmZlckNvcHlWaWV3ID0geworICAgICAgICBidWZmZXI6IGJ1ZmZl
ckEsCisgICAgICAgIHJvd1BpdGNoOiBjYW52YXMyZC53aWR0aCAqIDQsCisgICAgICAgIGltYWdl
SGVpZ2h0OiAwCisgICAgfTsKKyAgICBjb25zdCB0ZXh0dXJlQ29weVZpZXcgPSB7CisgICAgICAg
IHRleHR1cmU6IHRleHR1cmVCCisgICAgfTsKKyAgICBibGl0Q29tbWFuZEVuY29kZXIuY29weVRl
eHR1cmVUb0J1ZmZlcih0ZXh0dXJlQ29weVZpZXcsIGJ1ZmZlckNvcHlWaWV3LCB0ZXh0dXJlQS5k
ZXNjcmlwdG9yLnNpemUpOworCisgICAgZGV2aWNlLmdldFF1ZXVlKCkuc3VibWl0KFtibGl0Q29t
bWFuZEVuY29kZXIuZmluaXNoKCldKTsKKworICAgIGF3YWl0IGJ1ZmZlckEubWFwUmVhZEFzeW5j
KCkudGhlbihhYiA9PiB7CisgICAgICAgIGNvbnN0IGFycmF5ID0gbmV3IFVpbnQ4Q2xhbXBlZEFy
cmF5KGFiKTsKKyAgICAgICAgY29uc3QgcmVzdWx0SW1hZ2VEYXRhID0gbmV3IEltYWdlRGF0YShh
cnJheSwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhlaWdodCk7CisKKyAgICAgICAgY29udGV4
dDJkLnB1dEltYWdlRGF0YShyZXN1bHRJbWFnZURhdGEsIDAsIDApOworCisgICAgICAgIGJ1ZmZl
ckEuZGVzdHJveSgpOworICAgIH0pOworfQorCitnZXRCYXNpY0RldmljZSgpLnRoZW4oZnVuY3Rp
b24oZGV2aWNlKSB7CisgICAgdGVzdChkZXZpY2UpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9u
ZSgpOworICAgIH0sIGZ1bmN0aW9uKGUpIHsKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSk7Cit9LCBmdW5j
dGlvbigpIHsKKyAgICBjb25zdCBjYW52YXMyZCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImNh
bnZhcyIpOworICAgIGRyYXdHcmVlbk1pcENoYWluT25SZWRCYWNrZ3JvdW5kSW5Tb2Z0d2FyZShj
YW52YXMyZCk7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVy
Lm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJncHUvanMvd2ViZ3B1LWZ1bmN0aW9ucy5qcyBiL0xheW91dFRlc3RzL3dlYmdw
dS9qcy93ZWJncHUtZnVuY3Rpb25zLmpzCmluZGV4IGJkNWYxODM2OWM3NTAyMWEwN2Q2MjliYWRl
NjIzNWUyNTJiOTMyZDUuLmM2OTU1M2NiOGFhNzAxNTQ3MGVlYWMzNGEyY2NkOTRjMzFiYzgxYTUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS9qcy93ZWJncHUtZnVuY3Rpb25zLmpzCisr
KyBiL0xheW91dFRlc3RzL3dlYmdwdS9qcy93ZWJncHUtZnVuY3Rpb25zLmpzCkBAIC00LDYgKzQs
MjYgQEAgYXN5bmMgZnVuY3Rpb24gZ2V0QmFzaWNEZXZpY2UoKSB7CiAgICAgcmV0dXJuIGRldmlj
ZTsKIH0KIAorZnVuY3Rpb24gZHJhd0dyZWVuTWlwQ2hhaW5PblJlZEJhY2tncm91bmRJblNvZnR3
YXJlKGNhbnZhcykgeworICAgIGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgiMmQi
KTsKKyAgICBjb250ZXh0LmZpbGxTdHlsZSA9ICJyZ2IoMjU1LCAwLCAwKSI7CisgICAgY29udGV4
dC5maWxsUmVjdCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpOworCisgICAgbGV0
IG1heFJlc29sdXRpb24gPSBNYXRoLm1heChjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpOwor
ICAgIGxldCBtaXBMZXZlbENvdW50ID0gTWF0aC5jZWlsKE1hdGgubG9nMihtYXhSZXNvbHV0aW9u
KSk7CisgICAgaWYgKG1pcExldmVsQ291bnQgPCAxKSBtaXBMZXZlbENvdW50ID0gMTsKKworICAg
IGxldCB3aWR0aCAgPSBjYW52YXMud2lkdGg7CisgICAgbGV0IGhlaWdodCA9IGNhbnZhcy5oZWln
aHQ7CisgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBtaXBMZXZlbENvdW50OyArK2kpIHsKKyAgICAg
ICAgd2lkdGggID0gTWF0aC5tYXgoTWF0aC5mbG9vcih3aWR0aCAgLyAyKSwgMSk7CisgICAgICAg
IGhlaWdodCA9IE1hdGgubWF4KE1hdGguZmxvb3IoaGVpZ2h0IC8gMiksIDEpOworICAgICAgICBj
b250ZXh0LmZpbGxTdHlsZSA9ICJyZ2IoMCwgMjU1LCAwKSI7CisgICAgICAgIGNvbnRleHQuZmls
bFJlY3QoMCwgaGVpZ2h0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICB9CisKK30KKwogZnVuY3Rpb24g
ZHJhd1doaXRlU3F1YXJlT25CbHVlQmFja2dyb3VuZEluU29mdHdhcmUoY2FudmFzKSB7CiAgICAg
Y29uc3QgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOwogICAgIGNvbnRleHQuZmls
bFN0eWxlID0gImJsdWUiOwo=
</data>
<flag name="review"
          id="413677"
          type_id="1"
          status="+"
          setter="dbates"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398385</attachid>
            <date>2020-05-04 10:13:41 -0700</date>
            <delta_ts>2020-05-04 11:00:47 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-211303-20200504101341.patch</filename>
            <type>text/plain</type>
            <size>11027</size>
            <attacher>gvinals</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMDg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRiNDVhMTkzYjFlZDVk
MGQ5NzBhNzZjMTdkOGFmNGIxYTg4MjdkNS4uMzUyOGI1MDNjZGNjNDhmZTQ1MmE1ZjNjMGU5Yzlh
Y2ZkYzNkNjc4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA1LTA0ICBHdWls
bGVtIFZpbmFscyAgPGd2aW5hbHNAYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdQVTogY29weVRl
eHR1cmVUb1RleHR1cmUoKSBoYXMgYW4gaW1wbGVtZW50YXRpb24gYnVnIChzcmMgY29weSB2aWV3
IGluZm8gaXMgdXNlZCBhbHNvIGFzIGRzdCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTMwMworCisgICAgICAgIFJldmlld2VkIGJ5IERhbmllbCBC
YXRlcy4KKworICAgICAgICBUaGUgc291cmNlIGNvcHkgaW5mb3JtYXRpb24gaXMgYWxzbyB1c2Vk
IGFzIHRoZSBkZXN0aW5hdGlvbiBjb3B5IGluZm9ybWF0aW9uLgorCisgICAgICAgIFRlc3Q6IHdl
YmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS5odG1sCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVQ29tbWFuZEJ1ZmZlck1ldGFsLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6R1BVQ29tbWFuZEJ1ZmZlcjo6Y29weVRleHR1cmVUb1RleHR1cmUpOgor
CiAyMDIwLTA1LTA0ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CiAKICAgICAg
ICAgTWVkaWEgY29udHJvbHMgdHJhY2tzIG1lbnUgc2hvd3MgIkF1dG8iIHNlbGVjdGVkIGluc3Rl
YWQgb2YgdHJhY2sgc2VsZWN0ZWQgdmlhIHRoZSBKUyBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVDb21tYW5kQnVmZmVyTWV0YWwu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvY29jb2EvR1BVQ29tbWFu
ZEJ1ZmZlck1ldGFsLm1tCmluZGV4IDM2N2Q2M2RmNDk0ZmM5MGJhY2Y0OTFhMDM2ODcyNDc4NDZk
NTc3NGEuLjA3ZmNjYmVlMzc1ZGZkODE5MjQ1MjdjZWQ4NWU5MDg3YjM1ZmNiODggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9jb2NvYS9HUFVDb21tYW5k
QnVmZmVyTWV0YWwubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L2NvY29hL0dQVUNvbW1hbmRCdWZmZXJNZXRhbC5tbQpAQCAtMjI5LDggKzIyOSw4IEBAIHZvaWQg
R1BVQ29tbWFuZEJ1ZmZlcjo6Y29weVRleHR1cmVUb1RleHR1cmUoR1BVVGV4dHVyZUNvcHlWaWV3
JiYgc3JjLCBHUFVUZXh0dXJlCiAgICAgICAgIHNvdXJjZU9yaWdpbjpNVExPcmlnaW5NYWtlKHNy
Yy5vcmlnaW4ueCwgc3JjLm9yaWdpbi55LCBzcmMub3JpZ2luLnopCiAgICAgICAgIHNvdXJjZVNp
emU6TVRMU2l6ZU1ha2Uoc2l6ZS53aWR0aCwgc2l6ZS5oZWlnaHQsIHNpemUuZGVwdGgpCiAgICAg
ICAgIHRvVGV4dHVyZTpkc3QudGV4dHVyZS0+cGxhdGZvcm1UZXh0dXJlKCkKLSAgICAgICAgZGVz
dGluYXRpb25TbGljZTpzcmMuYXJyYXlMYXllcgotICAgICAgICBkZXN0aW5hdGlvbkxldmVsOnNy
Yy5taXBMZXZlbAorICAgICAgICBkZXN0aW5hdGlvblNsaWNlOmRzdC5hcnJheUxheWVyCisgICAg
ICAgIGRlc3RpbmF0aW9uTGV2ZWw6ZHN0Lm1pcExldmVsCiAgICAgICAgIGRlc3RpbmF0aW9uT3Jp
Z2luOk1UTE9yaWdpbk1ha2UoZHN0Lm9yaWdpbi54LCBkc3Qub3JpZ2luLnksIGRzdC5vcmlnaW4u
eildOwogCiAgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5ZjE4NDljNWZj
NGI2ZDFlMWZhMWIyNDczMzJjZWExNWU2NzlkYTg1Li44ZTUxZTNhYmRmMzA5YTNiYjU1NzNjYWYy
MWQ0YzZmYjgxMjRjZGZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDUtMDQgIEd1aWxs
ZW0gVmluYWxzICA8Z3ZpbmFsc0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR1BVOiBjb3B5VGV4
dHVyZVRvVGV4dHVyZSgpIGhhcyBhbiBpbXBsZW1lbnRhdGlvbiBidWcgKHNyYyBjb3B5IHZpZXcg
aW5mbyBpcyB1c2VkIGFsc28gYXMgZHN0KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjExMzAzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJh
dGVzLgorCisgICAgICAgICogd2ViZ3B1L2JsaXQtY29tbWFuZHMtdGV4dHVyZS10by10ZXh0dXJl
LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmdwdS9ibGl0LWNvbW1hbmRzLXRl
eHR1cmUtdG8tdGV4dHVyZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWJncHUvanMvd2ViZ3B1
LWZ1bmN0aW9ucy5qczoKKyAgICAgICAgKGRyYXdHcmVlbk1pcENoYWluT25SZWRCYWNrZ3JvdW5k
SW5Tb2Z0d2FyZSk6CisKIDIwMjAtMDUtMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgdGVzdCBnYXJkZW5pbmcuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJncHUvYmxpdC1jb21tYW5kcy10ZXh0dXJlLXRvLXRleHR1cmUtZXhw
ZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8t
dGV4dHVyZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE0YzE5ZWVlNDZkZGU5MmJlNmE5Y2Zk
NTA0YjBjYTQxNzcyNzg4ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
YmxpdC1jb21tYW5kcy10ZXh0dXJlLXRvLXRleHR1cmUtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsx
LDEwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5I
VE1MIFJlZmVyZW5jZSBGaWxlPC90aXRsZT4KKzxzY3JpcHQgc3JjPSJqcy93ZWJncHUtZnVuY3Rp
b25zLmpzIj48L3NjcmlwdD4KKzxwPlBhc3MgaWYgc3F1YXJlIGNhbnZhcyBiZWxvdyBzaG93cyBh
IGdyZWVuIG1pcCBjaGFpbiBvbiBhIHJlZCBiYWNrZ3JvdW5kLjwvcD4KKzxjYW52YXMgd2lkdGg9
IjUxMiIgaGVpZ2h0PSI1MTIiPjwvY2FudmFzPgorPHNjcmlwdD4KK2NvbnN0IGNhbnZhcyA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoImNhbnZhcyIpOworZHJhd0dyZWVuTWlwQ2hhaW5PblJlZEJh
Y2tncm91bmRJblNvZnR3YXJlKGNhbnZhcyk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViZ3B1L2JsaXQtY29tbWFuZHMtdGV4dHVyZS10by10ZXh0dXJlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDgxZmYxMzFmNzQyYWU5ZGY3YTQyOTU2NTI5OTVmNWQ4YTIzMjNiZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9ibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8t
dGV4dHVyZS5odG1sCkBAIC0wLDAgKzEsMTc3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNo
YXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5CbGl0dGluZyBUZXh0dXJlIFRvIFRleHR1cmU8L3RpdGxl
PgorPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJCbGl0IG9wZXJhdGlvbnMgcG9wdWxhdGUg
YSB0ZXh0dXJlIGNvcnJlY3RseSAoYWxsIG1pcCBsZXZlbHMpLiI+Cis8bGluayByZWw9Im1hdGNo
IiBocmVmPSJibGl0LWNvbW1hbmRzLXRleHR1cmUtdG8tdGV4dHVyZS1leHBlY3RlZC5odG1sIj4K
KzxwPlBhc3MgaWYgc3F1YXJlIGNhbnZhcyBiZWxvdyBzaG93cyBhIGdyZWVuIG1pcCBjaGFpbiBv
biBhIHJlZCBiYWNrZ3JvdW5kLjwvcD4KKzxjYW52YXMgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIi
PjwvY2FudmFzPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0ianMvd2ViZ3B1LWZ1bmN0aW9ucy5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOworCitmdW5jdGlvbiBsb2FkVGV4dHVyZUZyb21DYW52YXMyZChk
ZXZpY2UsIGNhbnZhczJkKSB7CisgICAgY29uc3QgdGV4dHVyZVNpemUgPSB7CisgICAgICAgIHdp
ZHRoOiAgY2FudmFzMmQud2lkdGgsCisgICAgICAgIGhlaWdodDogY2FudmFzMmQuaGVpZ2h0LAor
ICAgICAgICBkZXB0aDogIDEKKyAgICB9OworCisgICAgLy8gTWlwbWFwIGNvdW50CisgICAgbGV0
IG1heFJlc29sdXRpb24gPSBNYXRoLm1heChjYW52YXMyZC53aWR0aCwgY2FudmFzMmQuaGVpZ2h0
KTsKKyAgICBsZXQgbWlwTGV2ZWxDb3VudCA9IE1hdGguY2VpbChNYXRoLmxvZzIobWF4UmVzb2x1
dGlvbikpOworICAgIGlmIChtaXBMZXZlbENvdW50IDwgMSkgbWlwTGV2ZWxDb3VudCA9IDE7CisK
KyAgICBjb25zdCB0ZXh0dXJlRGVzY3JpcHRvciA9IHsKKyAgICAgICAgc2l6ZTogdGV4dHVyZVNp
emUsCisgICAgICAgIGFycmF5TGF5ZXJDb3VudDogMiwKKyAgICAgICAgbWlwTGV2ZWxDb3VudDog
bWlwTGV2ZWxDb3VudCwKKyAgICAgICAgc2FtcGxlQ291bnQ6IDEsCisgICAgICAgIGRpbWVuc2lv
bjogIjJkIiwKKyAgICAgICAgZm9ybWF0OiAicmdiYTh1bm9ybSIsCisgICAgICAgIHVzYWdlOiBH
UFVUZXh0dXJlVXNhZ2UuQ09QWV9TUkMgfCBHUFVUZXh0dXJlVXNhZ2UuQ09QWV9EU1QgfCBHUFVU
ZXh0dXJlVXNhZ2UuU0FNUExFRCAKKyAgICB9OworCisgICAgLy8gQ3JlYXRlIHRleHR1cmUgYW5k
IGFsc28gYWRkIHRoZSBkZXNjcmlwdG9yCisgICAgY29uc3QgdGV4dHVyZSA9IGRldmljZS5jcmVh
dGVUZXh0dXJlKHRleHR1cmVEZXNjcmlwdG9yKTsKKyAgICB0ZXh0dXJlLmRlc2NyaXB0b3IgPSB0
ZXh0dXJlRGVzY3JpcHRvcjsKKworICAgIC8vIFRleHR1cmUgZGF0YSAKKyAgICBjb25zdCBjb250
ZXh0MmQgPSBjYW52YXMyZC5nZXRDb250ZXh0KCcyZCcpOworICAgIGNvbnN0IGltYWdlRGF0YSA9
IGNvbnRleHQyZC5nZXRJbWFnZURhdGEoMCwgMCwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhl
aWdodCk7CisKKyAgICBjb25zdCB0ZXh0dXJlRGF0YUJ1ZmZlckRlc2NyaXB0b3IgPSB7CisgICAg
ICAgIHNpemU6IGltYWdlRGF0YS5kYXRhLmxlbmd0aCwKKyAgICAgICAgdXNhZ2U6IEdQVUJ1ZmZl
clVzYWdlLkNPUFlfU1JDCisgICAgfTsKKyAgICBjb25zdCBbdGV4dHVyZURhdGFCdWZmZXIsIHRl
eHR1cmVBcnJheUJ1ZmZlcl0gPSBkZXZpY2UuY3JlYXRlQnVmZmVyTWFwcGVkKHRleHR1cmVEYXRh
QnVmZmVyRGVzY3JpcHRvcik7CisgICAgCisgICAgY29uc3QgdGV4dHVyZVdyaXRlQXJyYXkgPSBu
ZXcgVWludDhBcnJheSh0ZXh0dXJlQXJyYXlCdWZmZXIpOworICAgIHRleHR1cmVXcml0ZUFycmF5
LnNldChpbWFnZURhdGEuZGF0YSk7CisgICAgdGV4dHVyZURhdGFCdWZmZXIudW5tYXAoKTsKKwor
ICAgIGNvbnN0IGRhdGFDb3B5VmlldyA9IHsKKyAgICAgICAgYnVmZmVyOiB0ZXh0dXJlRGF0YUJ1
ZmZlciwKKyAgICAgICAgb2Zmc2V0OiAwLAorICAgICAgICByb3dQaXRjaDogY2FudmFzMmQud2lk
dGggKiA0LAorICAgICAgICBpbWFnZUhlaWdodDogMAorICAgIH07CisgICAgY29uc3QgdGV4dHVy
ZUNvcHlWaWV3ID0geworICAgICAgICB0ZXh0dXJlOiB0ZXh0dXJlLAorICAgICAgICBtaXBMZXZl
bDogMCwKKyAgICAgICAgYXJyYXlMYXllcjogMCwKKyAgICAgICAgb3JpZ2luOiB7IHg6IDAsIHk6
IDAsIHo6IDAgfQorICAgIH07CisKKyAgICBjb25zdCBibGl0Q29tbWFuZEVuY29kZXIgPSBkZXZp
Y2UuY3JlYXRlQ29tbWFuZEVuY29kZXIoKTsKKyAgICBibGl0Q29tbWFuZEVuY29kZXIuY29weUJ1
ZmZlclRvVGV4dHVyZShkYXRhQ29weVZpZXcsIHRleHR1cmVDb3B5VmlldywgdGV4dHVyZVNpemUp
OworICAgIGRldmljZS5nZXRRdWV1ZSgpLnN1Ym1pdChbYmxpdENvbW1hbmRFbmNvZGVyLmZpbmlz
aCgpXSk7CisKKyAgICByZXR1cm4gdGV4dHVyZTsKK30KKworYXN5bmMgZnVuY3Rpb24gdGVzdChk
ZXZpY2UpIHsKKyAgICBjb25zdCBjYW52YXMyZCAgPSBhd2FpdCBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCJjYW52YXMiKTsKKyAgICBjb25zdCBjb250ZXh0MmQgPSBjYW52YXMyZC5nZXRDb250ZXh0
KCcyZCcpOworCisgICAgLy8gdGV4dHVyZUEgKGxheWVyIDAsIG1pcCAwKTogR3JlZW4KKyAgICBj
b250ZXh0MmQuZmlsbFN0eWxlID0gJ3JnYigwLCAyNTUsIDApJzsKKyAgICBjb250ZXh0MmQuZmls
bFJlY3QoMCwgMCwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhlaWdodCk7CisgICAgY29uc3Qg
dGV4dHVyZUEgPSBsb2FkVGV4dHVyZUZyb21DYW52YXMyZChkZXZpY2UsIGNhbnZhczJkKTsKKwor
ICAgIC8vIHRleHR1cmVCIChsYXllciAwLCBtaXAgMCk6IFJlZAorICAgIGNvbnRleHQyZC5maWxs
U3R5bGUgPSAncmdiKDI1NSwgMCwgMCknOworICAgIGNvbnRleHQyZC5maWxsUmVjdCgwLCAwLCBj
YW52YXMyZC53aWR0aCwgY2FudmFzMmQuaGVpZ2h0KTsKKyAgICBjb25zdCB0ZXh0dXJlQiA9IGxv
YWRUZXh0dXJlRnJvbUNhbnZhczJkKGRldmljZSwgY2FudmFzMmQpOyAKKworICAgIC8vIENsZWFu
IGNhbnZhcyB0byBibHVlCisgICAgY29udGV4dDJkLmZpbGxTdHlsZSA9ICdyZ2IoMCwgMCwgMjU1
KSc7CisgICAgY29udGV4dDJkLmZpbGxSZWN0KDAsIDAsIGNhbnZhczJkLndpZHRoLCBjYW52YXMy
ZC5oZWlnaHQpOworCisgICAgLy8gVGVzdCBjb3B5VGV4dHVyZVRvVGV4dHVyZQorCisgICAgbGV0
IHNpemUgPSBPYmplY3QuYXNzaWduKHt9LCB0ZXh0dXJlQS5kZXNjcmlwdG9yLnNpemUpOworICAg
IGxldCBibGl0Q29tbWFuZEVuY29kZXIgPSBkZXZpY2UuY3JlYXRlQ29tbWFuZEVuY29kZXIoKTsK
KyAgICBmb3IgKHZhciBpID0gMTsgaSA8IHRleHR1cmVBLmRlc2NyaXB0b3IubWlwTGV2ZWxDb3Vu
dDsgKytpKSB7CisgICAgICAgIHNpemUud2lkdGggID0gTWF0aC5tYXgoTWF0aC5mbG9vcihzaXpl
LndpZHRoIC8gMiksIDEpOworICAgICAgICBzaXplLmhlaWdodCA9IE1hdGgubWF4KE1hdGguZmxv
b3Ioc2l6ZS5oZWlnaHQgLyAyKSwgMSk7CisKKyAgICAgICAgbGV0IHNyY1RleHR1cmVDb3B5Vmll
dyA9IHsKKyAgICAgICAgICAgIHRleHR1cmU6IHRleHR1cmVBLAorICAgICAgICAgICAgbWlwTGV2
ZWw6IDAsCisgICAgICAgICAgICBhcnJheUxheWVyOiAwLAorICAgICAgICAgICAgb3JpZ2luOiB7
IHg6IDAsIHk6IDAsIHo6IDAgfQorICAgICAgICB9OworICAgICAgICBsZXQgZHN0VGV4dHVyZUNv
cHlWaWV3ID0geworICAgICAgICAgICAgdGV4dHVyZTogdGV4dHVyZUEsCisgICAgICAgICAgICBt
aXBMZXZlbDogaSwKKyAgICAgICAgICAgIGFycmF5TGF5ZXI6IDEsCisgICAgICAgICAgICBvcmln
aW46IHsgeDogMCwgeTogMCwgejogMCB9CisgICAgICAgIH07CisgICAgICAgIC8vIFBvcHVsYXRl
IHRleHR1cmVBIChsYXllciAxLCBtaXAgaSkKKyAgICAgICAgYmxpdENvbW1hbmRFbmNvZGVyLmNv
cHlUZXh0dXJlVG9UZXh0dXJlKHNyY1RleHR1cmVDb3B5VmlldywgZHN0VGV4dHVyZUNvcHlWaWV3
LCBzaXplKTsKKworICAgICAgICBzcmNUZXh0dXJlQ29weVZpZXcgPSB7CisgICAgICAgICAgICB0
ZXh0dXJlOiB0ZXh0dXJlQSwKKyAgICAgICAgICAgIG1pcExldmVsOiBpLAorICAgICAgICAgICAg
YXJyYXlMYXllcjogMSwKKyAgICAgICAgICAgIG9yaWdpbjogeyB4OiAwLCB5OiAwLCB6OiAwIH0K
KyAgICAgICAgfTsKKyAgICAgICAgZHN0VGV4dHVyZUNvcHlWaWV3ID0geworICAgICAgICAgICAg
dGV4dHVyZTogdGV4dHVyZUIsCisgICAgICAgICAgICBtaXBMZXZlbDogMCwKKyAgICAgICAgICAg
IGFycmF5TGF5ZXI6IDAsCisgICAgICAgICAgICBvcmlnaW46IHsgeDogMCwgeTogc2l6ZS5oZWln
aHQsIHo6IDAgfQorICAgICAgICB9OworICAgICAgICAvLyBQb3B1bGF0ZSB0ZXh0dXJlQiAobGF5
ZXIgMCwgbWlwIDApIHdpdGggdGV4dHVyZUEgKGxheWVyIDEsIG1pcCBpKQorICAgICAgICBibGl0
Q29tbWFuZEVuY29kZXIuY29weVRleHR1cmVUb1RleHR1cmUoc3JjVGV4dHVyZUNvcHlWaWV3LCBk
c3RUZXh0dXJlQ29weVZpZXcsIHNpemUpOworICAgIH0KKworICAgIC8vIFJlbmRlciB0ZXh0dXJl
QiBpbnRvIGNhbnZhczJkCisKKyAgICBjb25zdCBpbWFnZURhdGFMZW5ndGhJbkJ5dGVzID0gY2Fu
dmFzMmQud2lkdGggKiBjYW52YXMyZC5oZWlnaHQgKiA0OworICAgIGNvbnN0IGJ1ZmZlckRlc2Ny
aXB0b3IgPSB7CisgICAgICAgIHNpemU6IGltYWdlRGF0YUxlbmd0aEluQnl0ZXMsCisgICAgICAg
IHVzYWdlOiBHUFVCdWZmZXJVc2FnZS5DT1BZX0RTVCB8IEdQVUJ1ZmZlclVzYWdlLk1BUF9SRUFE
CisgICAgfTsKKyAgICBjb25zdCBidWZmZXJBID0gZGV2aWNlLmNyZWF0ZUJ1ZmZlcihidWZmZXJE
ZXNjcmlwdG9yKTsKKworICAgIGNvbnN0IGJ1ZmZlckNvcHlWaWV3ID0geworICAgICAgICBidWZm
ZXI6IGJ1ZmZlckEsCisgICAgICAgIHJvd1BpdGNoOiBjYW52YXMyZC53aWR0aCAqIDQsCisgICAg
ICAgIGltYWdlSGVpZ2h0OiAwCisgICAgfTsKKyAgICBjb25zdCB0ZXh0dXJlQ29weVZpZXcgPSB7
CisgICAgICAgIHRleHR1cmU6IHRleHR1cmVCCisgICAgfTsKKyAgICBibGl0Q29tbWFuZEVuY29k
ZXIuY29weVRleHR1cmVUb0J1ZmZlcih0ZXh0dXJlQ29weVZpZXcsIGJ1ZmZlckNvcHlWaWV3LCB0
ZXh0dXJlQS5kZXNjcmlwdG9yLnNpemUpOworCisgICAgZGV2aWNlLmdldFF1ZXVlKCkuc3VibWl0
KFtibGl0Q29tbWFuZEVuY29kZXIuZmluaXNoKCldKTsKKworICAgIGF3YWl0IGJ1ZmZlckEubWFw
UmVhZEFzeW5jKCkudGhlbihhYiA9PiB7CisgICAgICAgIGNvbnN0IGFycmF5ID0gbmV3IFVpbnQ4
Q2xhbXBlZEFycmF5KGFiKTsKKyAgICAgICAgY29uc3QgcmVzdWx0SW1hZ2VEYXRhID0gbmV3IElt
YWdlRGF0YShhcnJheSwgY2FudmFzMmQud2lkdGgsIGNhbnZhczJkLmhlaWdodCk7CisKKyAgICAg
ICAgY29udGV4dDJkLnB1dEltYWdlRGF0YShyZXN1bHRJbWFnZURhdGEsIDAsIDApOworCisgICAg
ICAgIGJ1ZmZlckEuZGVzdHJveSgpOworICAgIH0pOworfQorCitnZXRCYXNpY0RldmljZSgpLnRo
ZW4oZnVuY3Rpb24oZGV2aWNlKSB7CisgICAgdGVzdChkZXZpY2UpLnRoZW4oZnVuY3Rpb24oKSB7
CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIu
bm90aWZ5RG9uZSgpOworICAgIH0sIGZ1bmN0aW9uKGUpIHsKKyAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSk7
Cit9LCBmdW5jdGlvbigpIHsKKyAgICBjb25zdCBjYW52YXMyZCA9IGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoImNhbnZhcyIpOworICAgIGRyYXdHcmVlbk1pcENoYWluT25SZWRCYWNrZ3JvdW5kSW5T
b2Z0d2FyZShjYW52YXMyZCk7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJncHUvanMvd2ViZ3B1LWZ1bmN0aW9ucy5qcyBiL0xheW91dFRl
c3RzL3dlYmdwdS9qcy93ZWJncHUtZnVuY3Rpb25zLmpzCmluZGV4IGJkNWYxODM2OWM3NTAyMWEw
N2Q2MjliYWRlNjIzNWUyNTJiOTMyZDUuLmM2OTU1M2NiOGFhNzAxNTQ3MGVlYWMzNGEyY2NkOTRj
MzFiYzgxYTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3dlYmdwdS9qcy93ZWJncHUtZnVuY3Rp
b25zLmpzCisrKyBiL0xheW91dFRlc3RzL3dlYmdwdS9qcy93ZWJncHUtZnVuY3Rpb25zLmpzCkBA
IC00LDYgKzQsMjYgQEAgYXN5bmMgZnVuY3Rpb24gZ2V0QmFzaWNEZXZpY2UoKSB7CiAgICAgcmV0
dXJuIGRldmljZTsKIH0KIAorZnVuY3Rpb24gZHJhd0dyZWVuTWlwQ2hhaW5PblJlZEJhY2tncm91
bmRJblNvZnR3YXJlKGNhbnZhcykgeworICAgIGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29u
dGV4dCgiMmQiKTsKKyAgICBjb250ZXh0LmZpbGxTdHlsZSA9ICJyZ2IoMjU1LCAwLCAwKSI7Cisg
ICAgY29udGV4dC5maWxsUmVjdCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpOwor
CisgICAgbGV0IG1heFJlc29sdXRpb24gPSBNYXRoLm1heChjYW52YXMud2lkdGgsIGNhbnZhcy5o
ZWlnaHQpOworICAgIGxldCBtaXBMZXZlbENvdW50ID0gTWF0aC5jZWlsKE1hdGgubG9nMihtYXhS
ZXNvbHV0aW9uKSk7CisgICAgaWYgKG1pcExldmVsQ291bnQgPCAxKSBtaXBMZXZlbENvdW50ID0g
MTsKKworICAgIGxldCB3aWR0aCAgPSBjYW52YXMud2lkdGg7CisgICAgbGV0IGhlaWdodCA9IGNh
bnZhcy5oZWlnaHQ7CisgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBtaXBMZXZlbENvdW50OyArK2kp
IHsKKyAgICAgICAgd2lkdGggID0gTWF0aC5tYXgoTWF0aC5mbG9vcih3aWR0aCAgLyAyKSwgMSk7
CisgICAgICAgIGhlaWdodCA9IE1hdGgubWF4KE1hdGguZmxvb3IoaGVpZ2h0IC8gMiksIDEpOwor
ICAgICAgICBjb250ZXh0LmZpbGxTdHlsZSA9ICJyZ2IoMCwgMjU1LCAwKSI7CisgICAgICAgIGNv
bnRleHQuZmlsbFJlY3QoMCwgaGVpZ2h0LCB3aWR0aCwgaGVpZ2h0KTsKKyAgICB9CisKK30KKwog
ZnVuY3Rpb24gZHJhd1doaXRlU3F1YXJlT25CbHVlQmFja2dyb3VuZEluU29mdHdhcmUoY2FudmFz
KSB7CiAgICAgY29uc3QgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOwogICAgIGNv
bnRleHQuZmlsbFN0eWxlID0gImJsdWUiOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>