<?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>232736</bug_id>
          
          <creation_ts>2021-11-04 16:36:28 -0700</creation_ts>
          <short_desc>[macOS] run-benchmark should take diagnostic screenshots upon test timeout</short_desc>
          <delta_ts>2021-12-01 11:23:40 -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>Tools / Tests</component>
          <version>Other</version>
          <rep_platform>Mac (Apple Silicon)</rep_platform>
          <op_sys>macOS 11</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="hysu">hysu</reporter>
          <assigned_to name="hysu">hysu</assigned_to>
          <cc>dewei_zhu</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hysu</cc>
    
    <cc>jbedard</cc>
    
    <cc>slewis</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1812009</commentid>
    <comment_count>0</comment_count>
    <who name="hysu">hysu</who>
    <bug_when>2021-11-04 16:36:28 -0700</bug_when>
    <thetext>Browser benchmarks should be able to take screenshots when tests timeout if a diagnostic directory (--diagnose-directory) is specified. This functionality already exists in iOS, and should be roughly mirrored to macOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812021</commentid>
    <comment_count>1</comment_count>
      <attachid>443358</attachid>
    <who name="hysu">hysu</who>
    <bug_when>2021-11-04 17:14:00 -0700</bug_when>
    <thetext>Created attachment 443358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812198</commentid>
    <comment_count>2</comment_count>
      <attachid>443358</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2021-11-05 11:47:50 -0700</bug_when>
    <thetext>Comment on attachment 443358
Patch

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

&gt; Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:42
&gt; +    def _save_screenshot_to_path(self, output_directory, filename_without_extention):

typo: extention -&gt; extension

Why the choice to not add the extension to the filename originally? I&apos;ve found that changing passed in filenames adds a lot of additional complexity if we ever want to do anything else with the file later on and need to recreate the filename.

&gt; Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:43
&gt; +        jpg_image_name = &apos;{}.jpg&apos;.format(filename_without_extention)

ditto

&gt; Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:55
&gt; +            _log.info(&apos;Diagnose directory is not specified, will skip diagnosing.&apos;)

Where does diagnose directory get set?  If we don&apos;t pass in the option some default should be chosen like /private/tmp/ but maybe that happens before this

&gt; Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:60
&gt; +            if os.path.isdir(diagnose_directory):

nit: we use this kind of code a lot.  If there isn&apos;t already a clean up/recreate directory function maybe we should move this to utils and make one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812238</commentid>
    <comment_count>3</comment_count>
      <attachid>443358</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-11-05 13:49:10 -0700</bug_when>
    <thetext>Comment on attachment 443358
Patch

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

r=me

&gt; Tools/ChangeLog:8
&gt; +        Added diagnose_test_failure method to OSXBrowserDriver which cleans the diagnostic directory and takes a screenshot if a directory is specified (--diagnose-directory). 

Nit: this log line is too long, let&apos;s split it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813363</commentid>
    <comment_count>4</comment_count>
      <attachid>443736</attachid>
    <who name="hysu">hysu</who>
    <bug_when>2021-11-09 15:18:11 -0800</bug_when>
    <thetext>Created attachment 443736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813370</commentid>
    <comment_count>5</comment_count>
      <attachid>443736</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2021-11-09 15:34:32 -0800</bug_when>
    <thetext>Comment on attachment 443736
Patch

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

&gt; Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py:37
&gt; +    return &apos;/private/tmp/run-benchmark-diagnostics/&apos;

should probably add a timestamp.  tmp and private/tmp are pretty much the same thing so I don&apos;t know if the difference here is meaningful</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813373</commentid>
    <comment_count>6</comment_count>
      <attachid>443736</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-11-09 15:36:44 -0800</bug_when>
    <thetext>Comment on attachment 443736
Patch

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

&gt; Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:65
&gt; +        if os.path.exists(diagnose_directory):
&gt; +            _log.info(&apos;Diagnose directory: &quot;{}&quot; already exists, cleaning it up&apos;.format(diagnose_directory))
&gt; +            if os.path.isdir(diagnose_directory):
&gt; +                if len(os.listdir(diagnose_directory)):
&gt; +                    shutil.rmtree(diagnose_directory)
&gt; +            elif os.path.isfile(diagnose_directory):
&gt; +                os.remove(diagnose_directory)
&gt; +        if not os.path.exists(diagnose_directory):
&gt; +            os.makedirs(diagnose_directory)

Let&apos;s add some code to catch the exception here, for example, shutil.rmtree / os.remove may fail

&gt; Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py:55
&gt; +    parser.add_argument(&apos;--diagnose-directory&apos;, dest=&apos;diagnose_dir&apos;, default=default_diagnose_dir(), help=&apos;Directory for storing diagnose information on test failure. Defaults to %s.&apos; % default_diagnose_dir())

Let&apos;s use str.format instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813377</commentid>
    <comment_count>7</comment_count>
    <who name="hysu">hysu</who>
    <bug_when>2021-11-09 15:54:51 -0800</bug_when>
    <thetext>(In reply to dewei_zhu from comment #6)
&gt; Let&apos;s use str.format instead?

I kept it as string interpolation for now to keep it consistent with the surrounding code. I agree that it&apos;d probably be far neater as str.format, but I think that change might fit better as its own separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813380</commentid>
    <comment_count>8</comment_count>
    <who name="">dewei_zhu</who>
    <bug_when>2021-11-09 16:00:10 -0800</bug_when>
    <thetext>(In reply to W.D. Xiong from comment #7)
&gt; (In reply to dewei_zhu from comment #6)
&gt; &gt; Let&apos;s use str.format instead?
&gt; 
&gt; I kept it as string interpolation for now to keep it consistent with the
&gt; surrounding code. I agree that it&apos;d probably be far neater as str.format,
&gt; but I think that change might fit better as its own separate patch.

I think what we usually do is ensure the new code follows the preferred code style and have a separate patch to update the existing code to new style. Let&apos;s use &apos;str.format&apos; here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813403</commentid>
    <comment_count>9</comment_count>
      <attachid>443756</attachid>
    <who name="hysu">hysu</who>
    <bug_when>2021-11-09 16:40:05 -0800</bug_when>
    <thetext>Created attachment 443756
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813747</commentid>
    <comment_count>10</comment_count>
      <attachid>443756</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-11-10 12:20:51 -0800</bug_when>
    <thetext>Comment on attachment 443756
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814271</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-11 15:37:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/85319097&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819332</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-01 11:23:39 -0800</bug_when>
    <thetext>Committed r286374 (244733@main): &lt;https://commits.webkit.org/244733@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 443756.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443358</attachid>
            <date>2021-11-04 17:14:00 -0700</date>
            <delta_ts>2021-11-09 15:18:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232736-20211104171359.patch</filename>
            <type>text/plain</type>
            <size>3187</size>
            <attacher name="hysu">hysu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1MzIwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNTJmZTlkMDNkMmEyOWRiNTNhNzJkMjlhMGRlZTAzN2Uw
MjA1MjZjOS4uYjY4ZmI1YTViODcwNTllZmVlZGExMzViZmQ2ZjFmZGM4ZjhhZGYxNyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3
IEBACisyMDIxLTExLTA0ICBXLkQuIFhpb25nICA8d2R4QGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIHJ1bi1iZW5jaG1hcmsgc2hvdWxkIHRha2UgZGlhZ25vc3RpYyBzY3JlZW5zaG90cyB1
cG9uIHRlc3QgdGltZW91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjMyNzM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgZGlhZ25vc2VfdGVzdF9mYWlsdXJlIG1ldGhvZCB0byBPU1hCcm93c2Vy
RHJpdmVyIHdoaWNoIGNsZWFucyB0aGUgZGlhZ25vc3RpYyBkaXJlY3RvcnkgYW5kIHRha2VzIGEg
c2NyZWVuc2hvdCBpZiBhIGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQgKC0tZGlhZ25vc2UtZGlyZWN0
b3J5KS4gCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvYnJv
d3Nlcl9kcml2ZXIvb3N4X2Jyb3dzZXJfZHJpdmVyLnB5OgorICAgICAgICAoT1NYQnJvd3NlckRy
aXZlci5fc2F2ZV9zY3JlZW5zaG90X3RvX3BhdGgpOgorICAgICAgICAoT1NYQnJvd3NlckRyaXZl
cik6CisgICAgICAgIChPU1hCcm93c2VyRHJpdmVyLmRpYWdub3NlX3Rlc3RfZmFpbHVyZSk6CisK
IDIwMjEtMTEtMDMgIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtnaXQtd2Via2l0XSBBZGQgbGFuZCBjb21tYW5kCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvYnJvd3Nlcl9kcml2ZXIvb3N4X2Jyb3dzZXJf
ZHJpdmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2Jyb3dz
ZXJfZHJpdmVyL29zeF9icm93c2VyX2RyaXZlci5weQppbmRleCBmYTAyYzgxODI5ZjEwOGQxYTNk
MmEzMTBmMDgwOWQ2MGYwNWM4M2UxLi5lNzNlYWU5YjQ2MjNmMWQ3MDE5MDI3YWVhMDdlNmRkMmY4
ZGVhMjRmIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvYnJvd3Nlcl9kcml2ZXIvb3N4X2Jyb3dzZXJfZHJpdmVyLnB5CisrKyBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9icm93c2VyX2RyaXZlci9vc3hfYnJvd3Nlcl9k
cml2ZXIucHkKQEAgLTEsNiArMSw3IEBACiAKIGltcG9ydCBsb2dnaW5nCiBpbXBvcnQgb3MKK2lt
cG9ydCBzaHV0aWwKIGltcG9ydCBzdWJwcm9jZXNzCiBpbXBvcnQgdGltZQogCkBAIC0zOCw2ICsz
OSwzNCBAQCBjbGFzcyBPU1hCcm93c2VyRHJpdmVyKEJyb3dzZXJEcml2ZXIpOgogICAgIGRlZiBj
bG9zZV9icm93c2VycyhzZWxmKToKICAgICAgICAgc2VsZi5fdGVybWluYXRlX3Byb2Nlc3Nlcyhz
ZWxmLnByb2Nlc3NfbmFtZSwgc2VsZi5idW5kbGVfaWQpCiAKKyAgICBkZWYgX3NhdmVfc2NyZWVu
c2hvdF90b19wYXRoKHNlbGYsIG91dHB1dF9kaXJlY3RvcnksIGZpbGVuYW1lX3dpdGhvdXRfZXh0
ZW50aW9uKToKKyAgICAgICAganBnX2ltYWdlX25hbWUgPSAne30uanBnJy5mb3JtYXQoZmlsZW5h
bWVfd2l0aG91dF9leHRlbnRpb24pCisgICAgICAgIGpwZ19pbWFnZV9wYXRoID0gb3MucGF0aC5q
b2luKG91dHB1dF9kaXJlY3RvcnksIGpwZ19pbWFnZV9uYW1lKQorICAgICAgICB0cnk6CisgICAg
ICAgICAgICBzdWJwcm9jZXNzLmNhbGwoWydzY3JlZW5jYXB0dXJlJywganBnX2ltYWdlX3BhdGhd
KQorICAgICAgICAgICAgX2xvZy5pbmZvKCdTYXZlZCBzY3JlZW5zaG90IHRvICJ7fSInLmZvcm1h
dChqcGdfaW1hZ2VfcGF0aCkpCisgICAgICAgIGV4Y2VwdCBzdWJwcm9jZXNzLkNhbGxlZFByb2Nl
c3NFcnJvciBhcyBlcnJvcjoKKyAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0ZhaWxlZCB0byBzYXZl
IHNjcmVlbnNob3QgLSBFcnJvcjoge2Vycm9yfScuZm9ybWF0KGVycm9yPWVycm9yKSkKKworICAg
IGRlZiBkaWFnbm9zZV90ZXN0X2ZhaWx1cmUoc2VsZiwgZGlhZ25vc2VfZGlyZWN0b3J5LCBlcnJv
cik6CisgICAgICAgIF9sb2cuaW5mbygnRGlhZ25vc2luZyBiZW5jaG1hcmsgZmFpbHVyZTogInt9
IicuZm9ybWF0KGVycm9yKSkKKworICAgICAgICBpZiBub3QgZGlhZ25vc2VfZGlyZWN0b3J5Ogor
ICAgICAgICAgICAgX2xvZy5pbmZvKCdEaWFnbm9zZSBkaXJlY3RvcnkgaXMgbm90IHNwZWNpZmll
ZCwgd2lsbCBza2lwIGRpYWdub3NpbmcuJykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAg
IGlmIG9zLnBhdGguZXhpc3RzKGRpYWdub3NlX2RpcmVjdG9yeSk6CisgICAgICAgICAgICBfbG9n
LmluZm8oJ0RpYWdub3NlIGRpcmVjdG9yeTogInt9IiBhbHJlYWR5IGV4aXN0cywgY2xlYW5pbmcg
aXQgdXAnLmZvcm1hdChkaWFnbm9zZV9kaXJlY3RvcnkpKQorICAgICAgICAgICAgaWYgb3MucGF0
aC5pc2RpcihkaWFnbm9zZV9kaXJlY3RvcnkpOgorICAgICAgICAgICAgICAgIGlmIGxlbihvcy5s
aXN0ZGlyKGRpYWdub3NlX2RpcmVjdG9yeSkpOgorICAgICAgICAgICAgICAgICAgICBzaHV0aWwu
cm10cmVlKGRpYWdub3NlX2RpcmVjdG9yeSkKKyAgICAgICAgICAgIGVsaWYgb3MucGF0aC5pc2Zp
bGUoZGlhZ25vc2VfZGlyZWN0b3J5KToKKyAgICAgICAgICAgICAgICBvcy5yZW1vdmUoZGlhZ25v
c2VfZGlyZWN0b3J5KQorICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoZGlhZ25vc2VfZGly
ZWN0b3J5KToKKyAgICAgICAgICAgIG9zLm1ha2VkaXJzKGRpYWdub3NlX2RpcmVjdG9yeSkKKwor
ICAgICAgICBzZWxmLl9zYXZlX3NjcmVlbnNob3RfdG9fcGF0aChkaWFnbm9zZV9kaXJlY3Rvcnks
ICd0ZXN0LWZhaWx1cmUtc2NyZWVuc2hvdC17fScuZm9ybWF0KGludCh0aW1lLnRpbWUoKSkpKQor
CiAgICAgQGNsYXNzbWV0aG9kCiAgICAgZGVmIF9sYXVuY2hfcHJvY2VzcyhjbHMsIGJ1aWxkX2Rp
ciwgYXBwX25hbWUsIHVybCwgYXJncyk6CiAgICAgICAgIGlmIG5vdCBidWlsZF9kaXI6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443736</attachid>
            <date>2021-11-09 15:18:11 -0800</date>
            <delta_ts>2021-11-09 16:40:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232736-20211109151810.patch</filename>
            <type>text/plain</type>
            <size>5328</size>
            <attacher name="hysu">hysu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTIyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWI3MWM0OTk1ZTc5ZjRhMDcxYTUwMWI4YTQ5MGZmZjgx
NWJmYjU0NS4uMTE1OWVkNDMwYmU3MmUzNDIxMjkzNTk5MGVkMGM2NThmY2NiNzMxYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDIxLTExLTA5ICBXLkQuIFhpb25nICA8d2R4QGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIHJ1bi1iZW5jaG1hcmsgc2hvdWxkIHRha2UgZGlhZ25vc3RpYyBzY3JlZW5zaG90cyB1
cG9uIHRlc3QgdGltZW91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjMyNzM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGV3ZWkgWmh1LgorCisgICAg
ICAgIEFkZGVkIGRlZmF1bHRzIGZvciB0aGUgLS1kaWFnbm9zZS1kaXJlY3RvcnkgZmxhZyBkZXBl
bmRpbmcgb24gcGxhdGZvcm0uCisgICAgICAgIEFkZGVkIGRpYWdub3NlX3Rlc3RfZmFpbHVyZSBt
ZXRob2QgdG8gT1NYQnJvd3NlckRyaXZlciB0byB0YWtlIHNjcmVlbnNob3RzIGFuZCBzYXZlIHRv
IGRpYWdub3N0aWMgZGlyZWN0b3J5LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9iZW5j
aG1hcmtfcnVubmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93c2VyX2RyaXZlci5weToKKyAgICAg
ICAgKE9TWEJyb3dzZXJEcml2ZXIuX3NhdmVfc2NyZWVuc2hvdF90b19wYXRoKToKKyAgICAgICAg
KE9TWEJyb3dzZXJEcml2ZXIpOgorICAgICAgICAoT1NYQnJvd3NlckRyaXZlci5kaWFnbm9zZV90
ZXN0X2ZhaWx1cmUpOgorCiAyMDIxLTExLTA5ICBTdGVwaGFuIFN6YWJvICA8c3RlcGhhbi5zemFi
b0Bzb255LmNvbT4KIAogICAgICAgICBbV2luZG93c10gTm9uLWZpbmQgYmFzZWQgc3RhdHVzIGZp
bGUgZmluZGluZyBpbiBydW4tanNjLXN0cmVzcy10ZXN0cyBuZWVkcyB0byByZWxlYXNlIHN0YXR1
cyBmaWxlcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVu
bmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93c2VyX2RyaXZlci5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9icm93c2VyX2RyaXZlci9vc3hfYnJvd3Nlcl9kcml2
ZXIucHkKaW5kZXggZmEwMmM4MTgyOWYxMDhkMWEzZDJhMzEwZjA4MDlkNjBmMDVjODNlMS4uZmUw
MzljNTk4NzU3ZDk5ZjJlZTQ2NmFjYzMwOTRiZGE5OTcxOTkxYyAxMDA2NDQKLS0tIGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93
c2VyX2RyaXZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvYnJvd3Nlcl9kcml2ZXIvb3N4X2Jyb3dzZXJfZHJpdmVyLnB5CkBAIC0xLDYgKzEsNyBAQAog
CiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCitpbXBvcnQgc2h1dGlsCiBpbXBvcnQgc3VicHJv
Y2VzcwogaW1wb3J0IHRpbWUKIApAQCAtMzgsNiArMzksMzMgQEAgY2xhc3MgT1NYQnJvd3NlckRy
aXZlcihCcm93c2VyRHJpdmVyKToKICAgICBkZWYgY2xvc2VfYnJvd3NlcnMoc2VsZik6CiAgICAg
ICAgIHNlbGYuX3Rlcm1pbmF0ZV9wcm9jZXNzZXMoc2VsZi5wcm9jZXNzX25hbWUsIHNlbGYuYnVu
ZGxlX2lkKQogCisgICAgZGVmIF9zYXZlX3NjcmVlbnNob3RfdG9fcGF0aChzZWxmLCBvdXRwdXRf
ZGlyZWN0b3J5LCBmaWxlbmFtZSk6CisgICAgICAgIGpwZ19pbWFnZV9wYXRoID0gb3MucGF0aC5q
b2luKG91dHB1dF9kaXJlY3RvcnksIGZpbGVuYW1lKQorICAgICAgICB0cnk6CisgICAgICAgICAg
ICBzdWJwcm9jZXNzLmNhbGwoWydzY3JlZW5jYXB0dXJlJywganBnX2ltYWdlX3BhdGhdKQorICAg
ICAgICAgICAgX2xvZy5pbmZvKCdTYXZlZCBzY3JlZW5zaG90IHRvICJ7fSInLmZvcm1hdChqcGdf
aW1hZ2VfcGF0aCkpCisgICAgICAgIGV4Y2VwdCBzdWJwcm9jZXNzLkNhbGxlZFByb2Nlc3NFcnJv
ciBhcyBlcnJvcjoKKyAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0ZhaWxlZCB0byBzYXZlIHNjcmVl
bnNob3QgLSBFcnJvcjoge2Vycm9yfScuZm9ybWF0KGVycm9yPWVycm9yKSkKKworICAgIGRlZiBk
aWFnbm9zZV90ZXN0X2ZhaWx1cmUoc2VsZiwgZGlhZ25vc2VfZGlyZWN0b3J5LCBlcnJvcik6Cisg
ICAgICAgIF9sb2cuaW5mbygnRGlhZ25vc2luZyBiZW5jaG1hcmsgZmFpbHVyZTogInt9IicuZm9y
bWF0KGVycm9yKSkKKworICAgICAgICBpZiBub3QgZGlhZ25vc2VfZGlyZWN0b3J5OgorICAgICAg
ICAgICAgX2xvZy5pbmZvKCdEaWFnbm9zZSBkaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZCwgd2ls
bCBza2lwIGRpYWdub3NpbmcuJykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGlmIG9z
LnBhdGguZXhpc3RzKGRpYWdub3NlX2RpcmVjdG9yeSk6CisgICAgICAgICAgICBfbG9nLmluZm8o
J0RpYWdub3NlIGRpcmVjdG9yeTogInt9IiBhbHJlYWR5IGV4aXN0cywgY2xlYW5pbmcgaXQgdXAn
LmZvcm1hdChkaWFnbm9zZV9kaXJlY3RvcnkpKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2Rp
cihkaWFnbm9zZV9kaXJlY3RvcnkpOgorICAgICAgICAgICAgICAgIGlmIGxlbihvcy5saXN0ZGly
KGRpYWdub3NlX2RpcmVjdG9yeSkpOgorICAgICAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVl
KGRpYWdub3NlX2RpcmVjdG9yeSkKKyAgICAgICAgICAgIGVsaWYgb3MucGF0aC5pc2ZpbGUoZGlh
Z25vc2VfZGlyZWN0b3J5KToKKyAgICAgICAgICAgICAgICBvcy5yZW1vdmUoZGlhZ25vc2VfZGly
ZWN0b3J5KQorICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoZGlhZ25vc2VfZGlyZWN0b3J5
KToKKyAgICAgICAgICAgIG9zLm1ha2VkaXJzKGRpYWdub3NlX2RpcmVjdG9yeSkKKworICAgICAg
ICBzZWxmLl9zYXZlX3NjcmVlbnNob3RfdG9fcGF0aChkaWFnbm9zZV9kaXJlY3RvcnksICd0ZXN0
LWZhaWx1cmUtc2NyZWVuc2hvdC17fS5qcGcnLmZvcm1hdChpbnQodGltZS50aW1lKCkpKSkKKwog
ICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBfbGF1bmNoX3Byb2Nlc3MoY2xzLCBidWlsZF9kaXIs
IGFwcF9uYW1lLCB1cmwsIGFyZ3MpOgogICAgICAgICBpZiBub3QgYnVpbGRfZGlyOgpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL3J1bl9iZW5jaG1h
cmsucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvcnVuX2JlbmNo
bWFyay5weQppbmRleCA3MTdjZjg5YWMwMmJjNDU5MjFiM2Y0MWYzNzkzNDRiNjkwYWNhMGUwLi43
NGU3ODk0ODlkZjZmNzhkN2MyZjI3MjAwZTg1ZjBkNWVkZWYwNzY2IDEwMDc1NQotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvcnVuX2JlbmNobWFyay5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5uZXIvcnVuX2JlbmNobWFyay5w
eQpAQCAtMzEsNiArMzEsMTIgQEAgZGVmIGRlZmF1bHRfYnJvd3NlcigpOgogICAgIHJldHVybiAn
c2FmYXJpJwogCiAKK2RlZiBkZWZhdWx0X2RpYWdub3NlX2RpcigpOgorICAgIGlmIHN5cy5wbGF0
Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpOgorICAgICAgICByZXR1cm4gJy90bXAvcnVuLWJlbmNo
bWFyay1kaWFnbm9zdGljcy8nCisgICAgcmV0dXJuICcvcHJpdmF0ZS90bXAvcnVuLWJlbmNobWFy
ay1kaWFnbm9zdGljcy8nCisKKwogZGVmIGNvbmZpZ19hcmd1bWVudF9wYXJzZXIoKToKICAgICBw
YXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihkZXNjcmlwdGlvbj0nUnVuIGJyb3dzZXIg
YmFzZWQgcGVyZm9ybWFuY2UgYmVuY2htYXJrcy4gVG8gcnVuIGEgc2luZ2xlIGJlbmNobWFyayBp
biB0aGUgcmVjb21tZW5kZWQgd2F5LCB1c2UgcnVuLWJlbmNobWFyayAtLXBsYW4uIFRvIHNlZSB0
aGUgdmFpbGFibGUgYmVuY2htYXJrcywgdXNlIHJ1bi1iZW5jaG1hcmsgLS1saXN0LXBsYW5zLiBU
aGlzIHNjcmlwdCBwYXNzZXMgdGhyb3VnaCB0aGUgX19YUEMgdmFyaWFibGVzIGluIGl0cyBlbnZp
cm9ubWVudCB0byB0aGUgU2FmYXJpIHByb2Nlc3MuJykKICAgICBtdXR1YWxfZ3JvdXAgPSBwYXJz
ZXIuYWRkX211dHVhbGx5X2V4Y2x1c2l2ZV9ncm91cChyZXF1aXJlZD1UcnVlKQpAQCAtNDYsNyAr
NTIsNyBAQCBkZWYgY29uZmlnX2FyZ3VtZW50X3BhcnNlcigpOgogICAgIHBhcnNlci5hZGRfYXJn
dW1lbnQoJy0tbG9jYWwtY29weScsIGhlbHA9J1BhdGggdG8gYSBsb2NhbCBjb3B5IG9mIHRoZSBi
ZW5jaG1hcmsgKGUuZy4gUGVyZm9ybWFuY2VUZXN0cy9TdW5TcGlkZXIvKS4nKQogICAgIHBhcnNl
ci5hZGRfYXJndW1lbnQoJy0tZGV2aWNlLWlkJywgZGVmYXVsdD1Ob25lLCBoZWxwPSdVbmRvY3Vt
ZW50ZWQgb3B0aW9uIGZvciBtb2JpbGUgZGV2aWNlIHRlc3RpbmcuJykKICAgICBwYXJzZXIuYWRk
X2FyZ3VtZW50KCctLWRlYnVnJywgYWN0aW9uPSdzdG9yZV90cnVlJywgaGVscD0nRW5hYmxlIGRl
YnVnIGxvZ2dpbmcuJykKLSAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWRpYWdub3NlLWRpcmVj
dG9yeScsIGRlc3Q9J2RpYWdub3NlX2RpcicsIGRlZmF1bHQ9Tm9uZSwgaGVscD0nRGlyZWN0b3J5
IGZvciBzdG9yaW5nIGRpYWdub3NlIGluZm9ybWF0aW9uIG9uIHRlc3QgZmFpbHVyZS4gSXRcJ3Mg
dXAgdG8gYnJvd3NlciBkcml2ZXIgaW1wbGVtZW50YXRpb24gd2hlbiB0aGlzIG9wdGlvbiBpcyBu
b3Qgc3BlY2lmaWVkLicpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1kaWFnbm9zZS1kaXJl
Y3RvcnknLCBkZXN0PSdkaWFnbm9zZV9kaXInLCBkZWZhdWx0PWRlZmF1bHRfZGlhZ25vc2VfZGly
KCksIGhlbHA9J0RpcmVjdG9yeSBmb3Igc3RvcmluZyBkaWFnbm9zZSBpbmZvcm1hdGlvbiBvbiB0
ZXN0IGZhaWx1cmUuIERlZmF1bHRzIHRvICVzLicgJSBkZWZhdWx0X2RpYWdub3NlX2RpcigpKQog
ICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0tbm8tYWRqdXN0LXVuaXQnLCBkZXN0PSdzY2FsZV91
bml0JywgYWN0aW9uPSdzdG9yZV9mYWxzZScsIGhlbHA9IkRvbid0IGNvbnZlcnQgdG8gc2NpZW50
aWZpYyBub3RhdGlvbi4iKQogICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0tc2hvdy1pdGVyYXRp
b24tdmFsdWVzJywgZGVzdD0nc2hvd19pdGVyYXRpb25fdmFsdWVzJywgYWN0aW9uPSdzdG9yZV90
cnVlJywgaGVscD0iU2hvdyB0aGUgbWVhc3VyZWQgdmFsdWUgZm9yIGVhY2ggaXRlcmF0aW9uIGlu
IGFkZGl0aW9uIHRvIGF2ZXJhZ2VzLiIpCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443756</attachid>
            <date>2021-11-09 16:40:05 -0800</date>
            <delta_ts>2021-12-01 11:23:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232736-20211109164005.patch</filename>
            <type>text/plain</type>
            <size>5708</size>
            <attacher name="hysu">hysu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTIyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWI3MWM0OTk1ZTc5ZjRhMDcxYTUwMWI4YTQ5MGZmZjgx
NWJmYjU0NS4uMTE1OWVkNDMwYmU3MmUzNDIxMjkzNTk5MGVkMGM2NThmY2NiNzMxYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDIxLTExLTA5ICBXLkQuIFhpb25nICA8d2R4QGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIHJ1bi1iZW5jaG1hcmsgc2hvdWxkIHRha2UgZGlhZ25vc3RpYyBzY3JlZW5zaG90cyB1
cG9uIHRlc3QgdGltZW91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjMyNzM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGV3ZWkgWmh1LgorCisgICAg
ICAgIEFkZGVkIGRlZmF1bHRzIGZvciB0aGUgLS1kaWFnbm9zZS1kaXJlY3RvcnkgZmxhZyBkZXBl
bmRpbmcgb24gcGxhdGZvcm0uCisgICAgICAgIEFkZGVkIGRpYWdub3NlX3Rlc3RfZmFpbHVyZSBt
ZXRob2QgdG8gT1NYQnJvd3NlckRyaXZlciB0byB0YWtlIHNjcmVlbnNob3RzIGFuZCBzYXZlIHRv
IGRpYWdub3N0aWMgZGlyZWN0b3J5LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9iZW5j
aG1hcmtfcnVubmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93c2VyX2RyaXZlci5weToKKyAgICAg
ICAgKE9TWEJyb3dzZXJEcml2ZXIuX3NhdmVfc2NyZWVuc2hvdF90b19wYXRoKToKKyAgICAgICAg
KE9TWEJyb3dzZXJEcml2ZXIpOgorICAgICAgICAoT1NYQnJvd3NlckRyaXZlci5kaWFnbm9zZV90
ZXN0X2ZhaWx1cmUpOgorCiAyMDIxLTExLTA5ICBTdGVwaGFuIFN6YWJvICA8c3RlcGhhbi5zemFi
b0Bzb255LmNvbT4KIAogICAgICAgICBbV2luZG93c10gTm9uLWZpbmQgYmFzZWQgc3RhdHVzIGZp
bGUgZmluZGluZyBpbiBydW4tanNjLXN0cmVzcy10ZXN0cyBuZWVkcyB0byByZWxlYXNlIHN0YXR1
cyBmaWxlcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVu
bmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93c2VyX2RyaXZlci5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvYmVuY2htYXJrX3J1bm5lci9icm93c2VyX2RyaXZlci9vc3hfYnJvd3Nlcl9kcml2
ZXIucHkKaW5kZXggZmEwMmM4MTgyOWYxMDhkMWEzZDJhMzEwZjA4MDlkNjBmMDVjODNlMS4uMTA4
NDhhOGU1ZDliYjM0ODJhYzUzMjA0YTFlNTkyMDNjNGE4ZmRiMyAxMDA2NDQKLS0tIGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9iZW5jaG1hcmtfcnVubmVyL2Jyb3dzZXJfZHJpdmVyL29zeF9icm93
c2VyX2RyaXZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNobWFya19ydW5u
ZXIvYnJvd3Nlcl9kcml2ZXIvb3N4X2Jyb3dzZXJfZHJpdmVyLnB5CkBAIC0xLDYgKzEsNyBAQAog
CiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCitpbXBvcnQgc2h1dGlsCiBpbXBvcnQgc3VicHJv
Y2VzcwogaW1wb3J0IHRpbWUKIApAQCAtMzgsNiArMzksMzYgQEAgY2xhc3MgT1NYQnJvd3NlckRy
aXZlcihCcm93c2VyRHJpdmVyKToKICAgICBkZWYgY2xvc2VfYnJvd3NlcnMoc2VsZik6CiAgICAg
ICAgIHNlbGYuX3Rlcm1pbmF0ZV9wcm9jZXNzZXMoc2VsZi5wcm9jZXNzX25hbWUsIHNlbGYuYnVu
ZGxlX2lkKQogCisgICAgZGVmIF9zYXZlX3NjcmVlbnNob3RfdG9fcGF0aChzZWxmLCBvdXRwdXRf
ZGlyZWN0b3J5LCBmaWxlbmFtZSk6CisgICAgICAgIGpwZ19pbWFnZV9wYXRoID0gb3MucGF0aC5q
b2luKG91dHB1dF9kaXJlY3RvcnksIGZpbGVuYW1lKQorICAgICAgICB0cnk6CisgICAgICAgICAg
ICBzdWJwcm9jZXNzLmNhbGwoWydzY3JlZW5jYXB0dXJlJywganBnX2ltYWdlX3BhdGhdKQorICAg
ICAgICAgICAgX2xvZy5pbmZvKCdTYXZlZCBzY3JlZW5zaG90IHRvICJ7fSInLmZvcm1hdChqcGdf
aW1hZ2VfcGF0aCkpCisgICAgICAgIGV4Y2VwdCBzdWJwcm9jZXNzLkNhbGxlZFByb2Nlc3NFcnJv
ciBhcyBlcnJvcjoKKyAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0ZhaWxlZCB0byBzYXZlIHNjcmVl
bnNob3QgLSBFcnJvcjoge2Vycm9yfScuZm9ybWF0KGVycm9yPWVycm9yKSkKKworICAgIGRlZiBk
aWFnbm9zZV90ZXN0X2ZhaWx1cmUoc2VsZiwgZGlhZ25vc2VfZGlyZWN0b3J5LCBlcnJvcik6Cisg
ICAgICAgIF9sb2cuaW5mbygnRGlhZ25vc2luZyBiZW5jaG1hcmsgZmFpbHVyZTogInt9IicuZm9y
bWF0KGVycm9yKSkKKworICAgICAgICBpZiBub3QgZGlhZ25vc2VfZGlyZWN0b3J5OgorICAgICAg
ICAgICAgX2xvZy5pbmZvKCdEaWFnbm9zZSBkaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZCwgd2ls
bCBza2lwIGRpYWdub3NpbmcuJykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGlmIG9z
LnBhdGguZXhpc3RzKGRpYWdub3NlX2RpcmVjdG9yeSk6CisgICAgICAgICAgICBfbG9nLmluZm8o
J0RpYWdub3NlIGRpcmVjdG9yeTogInt9IiBhbHJlYWR5IGV4aXN0cywgY2xlYW5pbmcgaXQgdXAn
LmZvcm1hdChkaWFnbm9zZV9kaXJlY3RvcnkpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAg
ICAgICAgIGlmIG9zLnBhdGguaXNkaXIoZGlhZ25vc2VfZGlyZWN0b3J5KToKKyAgICAgICAgICAg
ICAgICAgICAgaWYgbGVuKG9zLmxpc3RkaXIoZGlhZ25vc2VfZGlyZWN0b3J5KSk6CisgICAgICAg
ICAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRpYWdub3NlX2RpcmVjdG9yeSkKKyAgICAg
ICAgICAgICAgICBlbGlmIG9zLnBhdGguaXNmaWxlKGRpYWdub3NlX2RpcmVjdG9yeSk6CisgICAg
ICAgICAgICAgICAgICAgIG9zLnJlbW92ZShkaWFnbm9zZV9kaXJlY3RvcnkpCisgICAgICAgICAg
ICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycm9yOgorICAgICAgICAgICAgICAgIF9sb2cuZXJyb3Io
J0NvdWxkIG5vdCByZW1vdmUgZGlhZ25vc2UgZGlyZWN0b3J5IHt9IC0gZXJyb3I6IHt9Jy5mb3Jt
YXQoZGlhZ25vc2VfZGlyZWN0b3J5LCBlcnJvcikpCisgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4
aXN0cyhkaWFnbm9zZV9kaXJlY3RvcnkpOgorICAgICAgICAgICAgb3MubWFrZWRpcnMoZGlhZ25v
c2VfZGlyZWN0b3J5KQorCisgICAgICAgIHNlbGYuX3NhdmVfc2NyZWVuc2hvdF90b19wYXRoKGRp
YWdub3NlX2RpcmVjdG9yeSwgJ3Rlc3QtZmFpbHVyZS1zY3JlZW5zaG90LXt9LmpwZycuZm9ybWF0
KGludCh0aW1lLnRpbWUoKSkpKQorCiAgICAgQGNsYXNzbWV0aG9kCiAgICAgZGVmIF9sYXVuY2hf
cHJvY2VzcyhjbHMsIGJ1aWxkX2RpciwgYXBwX25hbWUsIHVybCwgYXJncyk6CiAgICAgICAgIGlm
IG5vdCBidWlsZF9kaXI6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2JlbmNo
bWFya19ydW5uZXIvcnVuX2JlbmNobWFyay5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVu
Y2htYXJrX3J1bm5lci9ydW5fYmVuY2htYXJrLnB5CmluZGV4IDcxN2NmODlhYzAyYmM0NTkyMWIz
ZjQxZjM3OTM0NGI2OTBhY2EwZTAuLjcwZGExMGQwOWM0ZjdlMGViNDkzYTI5NDhhYjAzMDdmMTg2
YTAzY2EgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJrX3J1bm5l
ci9ydW5fYmVuY2htYXJrLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvYmVuY2htYXJr
X3J1bm5lci9ydW5fYmVuY2htYXJrLnB5CkBAIC01LDYgKzUsNyBAQCBpbXBvcnQganNvbgogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBvcwogaW1wb3J0IHN5cworaW1wb3J0IHRpbWUKIAogZnJvbSB3
ZWJraXRweS5iZW5jaG1hcmtfcnVubmVyLmJyb3dzZXJfZHJpdmVyLmJyb3dzZXJfZHJpdmVyX2Zh
Y3RvcnkgaW1wb3J0IEJyb3dzZXJEcml2ZXJGYWN0b3J5CiBmcm9tIHdlYmtpdHB5LmJlbmNobWFy
a19ydW5uZXIuYmVuY2htYXJrX3J1bm5lciBpbXBvcnQgQmVuY2htYXJrUnVubmVyCkBAIC0zMSw2
ICszMiwxMCBAQCBkZWYgZGVmYXVsdF9icm93c2VyKCk6CiAgICAgcmV0dXJuICdzYWZhcmknCiAK
IAorZGVmIGRlZmF1bHRfZGlhZ25vc2VfZGlyKCk6CisgICAgcmV0dXJuICcvdG1wL3J1bi1iZW5j
aG1hcmstZGlhZ25vc3RpY3Mte30vJy5mb3JtYXQoaW50KHRpbWUudGltZSgpKSkKKworCiBkZWYg
Y29uZmlnX2FyZ3VtZW50X3BhcnNlcigpOgogICAgIHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50
UGFyc2VyKGRlc2NyaXB0aW9uPSdSdW4gYnJvd3NlciBiYXNlZCBwZXJmb3JtYW5jZSBiZW5jaG1h
cmtzLiBUbyBydW4gYSBzaW5nbGUgYmVuY2htYXJrIGluIHRoZSByZWNvbW1lbmRlZCB3YXksIHVz
ZSBydW4tYmVuY2htYXJrIC0tcGxhbi4gVG8gc2VlIHRoZSB2YWlsYWJsZSBiZW5jaG1hcmtzLCB1
c2UgcnVuLWJlbmNobWFyayAtLWxpc3QtcGxhbnMuIFRoaXMgc2NyaXB0IHBhc3NlcyB0aHJvdWdo
IHRoZSBfX1hQQyB2YXJpYWJsZXMgaW4gaXRzIGVudmlyb25tZW50IHRvIHRoZSBTYWZhcmkgcHJv
Y2Vzcy4nKQogICAgIG11dHVhbF9ncm91cCA9IHBhcnNlci5hZGRfbXV0dWFsbHlfZXhjbHVzaXZl
X2dyb3VwKHJlcXVpcmVkPVRydWUpCkBAIC00Niw3ICs1MSw3IEBAIGRlZiBjb25maWdfYXJndW1l
bnRfcGFyc2VyKCk6CiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1sb2NhbC1jb3B5JywgaGVs
cD0nUGF0aCB0byBhIGxvY2FsIGNvcHkgb2YgdGhlIGJlbmNobWFyayAoZS5nLiBQZXJmb3JtYW5j
ZVRlc3RzL1N1blNwaWRlci8pLicpCiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1kZXZpY2Ut
aWQnLCBkZWZhdWx0PU5vbmUsIGhlbHA9J1VuZG9jdW1lbnRlZCBvcHRpb24gZm9yIG1vYmlsZSBk
ZXZpY2UgdGVzdGluZy4nKQogICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0tZGVidWcnLCBhY3Rp
b249J3N0b3JlX3RydWUnLCBoZWxwPSdFbmFibGUgZGVidWcgbG9nZ2luZy4nKQotICAgIHBhcnNl
ci5hZGRfYXJndW1lbnQoJy0tZGlhZ25vc2UtZGlyZWN0b3J5JywgZGVzdD0nZGlhZ25vc2VfZGly
JywgZGVmYXVsdD1Ob25lLCBoZWxwPSdEaXJlY3RvcnkgZm9yIHN0b3JpbmcgZGlhZ25vc2UgaW5m
b3JtYXRpb24gb24gdGVzdCBmYWlsdXJlLiBJdFwncyB1cCB0byBicm93c2VyIGRyaXZlciBpbXBs
ZW1lbnRhdGlvbiB3aGVuIHRoaXMgb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuJykKKyAgICBwYXJz
ZXIuYWRkX2FyZ3VtZW50KCctLWRpYWdub3NlLWRpcmVjdG9yeScsIGRlc3Q9J2RpYWdub3NlX2Rp
cicsIGRlZmF1bHQ9ZGVmYXVsdF9kaWFnbm9zZV9kaXIoKSwgaGVscD0nRGlyZWN0b3J5IGZvciBz
dG9yaW5nIGRpYWdub3NlIGluZm9ybWF0aW9uIG9uIHRlc3QgZmFpbHVyZS4gRGVmYXVsdHMgdG8g
e30uJy5mb3JtYXQoZGVmYXVsdF9kaWFnbm9zZV9kaXIoKSkpCiAgICAgcGFyc2VyLmFkZF9hcmd1
bWVudCgnLS1uby1hZGp1c3QtdW5pdCcsIGRlc3Q9J3NjYWxlX3VuaXQnLCBhY3Rpb249J3N0b3Jl
X2ZhbHNlJywgaGVscD0iRG9uJ3QgY29udmVydCB0byBzY2llbnRpZmljIG5vdGF0aW9uLiIpCiAg
ICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1zaG93LWl0ZXJhdGlvbi12YWx1ZXMnLCBkZXN0PSdz
aG93X2l0ZXJhdGlvbl92YWx1ZXMnLCBhY3Rpb249J3N0b3JlX3RydWUnLCBoZWxwPSJTaG93IHRo
ZSBtZWFzdXJlZCB2YWx1ZSBmb3IgZWFjaCBpdGVyYXRpb24gaW4gYWRkaXRpb24gdG8gYXZlcmFn
ZXMuIikKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>