<?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>225361</bug_id>
          
          <creation_ts>2021-05-04 10:41:11 -0700</creation_ts>
          <short_desc>[webkitscmpy] Scope classes used in TaskPool to object</short_desc>
          <delta_ts>2021-05-04 17:00:23 -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>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=225221</see_also>
          <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="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>slewis</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1756588</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-05-04 10:41:11 -0700</bug_when>
    <thetext>I found myself needing to access some of TaskPool&apos;s helper classes in https://bugs.webkit.org/show_bug.cgi?id=225221 and realized the organization of TaskPool&apos;s helper classes needed some improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756589</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-04 10:41:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/77514131&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756590</commentid>
    <comment_count>2</comment_count>
      <attachid>427685</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-05-04 10:45:29 -0700</bug_when>
    <thetext>Created attachment 427685
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756683</commentid>
    <comment_count>3</comment_count>
      <attachid>427685</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-05-04 14:53:53 -0700</bug_when>
    <thetext>Comment on attachment 427685
Patch

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

&gt; Tools/Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py:256
&gt; +        cls.queue = queue

Is this used anywhere other than `cls.queue = None`?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756693</commentid>
    <comment_count>4</comment_count>
      <attachid>427685</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2021-05-04 15:42:20 -0700</bug_when>
    <thetext>Comment on attachment 427685
Patch

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

&gt;&gt; Tools/Scripts/libraries/webkitcorepy/webkitcorepy/task_pool.py:256
&gt;&gt; +        cls.queue = queue
&gt; 
&gt; Is this used anywhere other than `cls.queue = None`?

Not yet.

The motivation for this is to allow worker processes to pass messages to their parent explicitly. This is particularly helpful when running test suites, where we may be able to partially report results to our parent process before finishing the entirety of our shard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756710</commentid>
    <comment_count>5</comment_count>
      <attachid>427685</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2021-05-04 16:29:16 -0700</bug_when>
    <thetext>Comment on attachment 427685
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756723</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-04 17:00:22 -0700</bug_when>
    <thetext>Committed r276997 (237317@main): &lt;https://commits.webkit.org/237317@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427685.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427685</attachid>
            <date>2021-05-04 10:45:29 -0700</date>
            <delta_ts>2021-05-04 17:00:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225361-20210504104528.patch</filename>
            <type>text/plain</type>
            <size>11208</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3Njk1OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM5IEBACisyMDIxLTA1LTA0ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBbd2Via2l0c2NtcHldIFNjb3BlIGNsYXNzZXMgdXNlZCBpbiBUYXNrUG9v
bCB0byBvYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNTM2MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzc1MTQxMzE+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGNsYXNzZXMgdXNlZCBi
eSBUYXNrUG9vbCBtdXN0IGJlIHN0YW5kLWFsb25lIGJlY2F1c2UgdGhleSBhcmUgcGFzc2VkIGJl
dHdlZW4gcHJvY2Vzc2VzLgorICAgICAgICBIb3dldmVyLCBpdCBtYWtlcyBzZW5zZSB0aGF0IHRo
b3NlIGNsYXNzZXMgYXJlIHNjb3BlZCB0byB0aGUgVGFza1Bvb2wgb2JqZWN0IHNpbmNlIHRoZWly
CisgICAgICAgIHVzYWdlIHNob3VsZCBhbHdheXMgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBUYXNr
UG9vbCBvYmplY3QKKworICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3dlYmtpdGNvcmVweS9z
ZXR1cC5weToKKyAgICAgICAgKiBTY3JpcHRzL2xpYnJhcmllcy93ZWJraXRjb3JlcHkvd2Via2l0
Y29yZXB5L19faW5pdF9fLnB5OgorICAgICAgICAqIFNjcmlwdHMvbGlicmFyaWVzL3dlYmtpdGNv
cmVweS93ZWJraXRjb3JlcHkvdGFza19wb29sLnB5OgorICAgICAgICAoX01lc3NhZ2UpOiBSZW5h
bWVkIGZyb20gTWVzc2FnZS4KKyAgICAgICAgKF9UYXNrKTogUmVuYW1lZCBmcm9tIFRhc2suCisg
ICAgICAgIChfUmVzdWx0KTogUmVuYW1lZCBmcm9tIFJlc3VsdC4KKyAgICAgICAgKF9Mb2cpOiBS
ZW5hbWVkIGZyb20gTG9nLgorICAgICAgICAoX1ByaW50KTogUmVuYW1lZCBmcm9tIFByaW50Lgor
ICAgICAgICAoX1N0YXRlKTogUmVuYW1lZCBmcm9tIFN0YXRlLgorICAgICAgICAoX0NoaWxkRXhj
ZXB0aW9uKTogUmVuYW1lZCBmcm9tIENoaWxkRXhjZXB0aW9uLgorICAgICAgICAoX0JpRGlyZWN0
aW9uYWxRdWV1ZSk6IFJlbmFtZWQgZnJvbSBCaURpcmVjdGlvbmFsUXVldWUuCisgICAgICAgIChf
UHJvY2Vzcyk6IFJlbmFtZWQgZnJvbSBQcm9jZXNzLgorICAgICAgICAoVGFza1Bvb2wpOgorICAg
ICAgICAoVGFza1Bvb2wuZG8pOgorICAgICAgICAoTWVzc2FnZSk6IFJlbmFtZWQgdG8gX01lc3Nh
Z2UuLgorICAgICAgICAoVGFzayk6IFJlbmFtZWQgdG8gX1Rhc2suCisgICAgICAgIChSZXN1bHQp
OiBSZW5hbWVkIHRvIF9SZXN1bHQuCisgICAgICAgIChMb2cpOiBSZW5hbWVkIHRvIF9Mb2cuCisg
ICAgICAgIChQcmludCk6IFJlbmFtZWQgdG8gX1ByaW50LgorICAgICAgICAoU3RhdGUpOiBSZW5h
bWVkIHRvIF9TdGF0ZS4KKyAgICAgICAgKENoaWxkRXhjZXB0aW9uKTogUmVuYW1lZCB0byBfQ2hp
bGRFeGNlcHRpb24uCisgICAgICAgIChCaURpcmVjdGlvbmFsUXVldWUpOiBSZW5hbWVkIHRvIF9C
aURpcmVjdGlvbmFsUXVldWUuCisgICAgICAgIChQcm9jZXNzKTogUmVuYW1lZCB0byBfUHJvY2Vz
cy4KKwogMjAyMS0wNS0wMyAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFtHUFVQXSBNb3ZlIEdQVVByb2Nlc3MgV2ViR0wgdG8gRXhwZXJpbWVudGFsIEZl
YXR1cmUKSW5kZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdGNvcmVweS9zZXR1cC5w
eQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL2xpYnJhcmllcy93ZWJraXRjb3JlcHkvc2V0
dXAucHkJKHJldmlzaW9uIDI3Njk1OSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtp
dGNvcmVweS9zZXR1cC5weQkod29ya2luZyBjb3B5KQpAQCAtMzAsNyArMzAsNyBAQCBkZWYgcmVh
ZG1lKCk6CiAKIHNldHVwKAogICAgIG5hbWU9J3dlYmtpdGNvcmVweScsCi0gICAgdmVyc2lvbj0n
MC41LjEyJywKKyAgICB2ZXJzaW9uPScwLjUuMTMnLAogICAgIGRlc2NyaXB0aW9uPSdMaWJyYXJ5
IGNvbnRhaW5pbmcgdmFyaW91cyBQeXRob24gc3VwcG9ydCBjbGFzc2VzIGFuZCBmdW5jdGlvbnMu
JywKICAgICBsb25nX2Rlc2NyaXB0aW9uPXJlYWRtZSgpLAogICAgIGNsYXNzaWZpZXJzPVsKSW5k
ZXg6IFRvb2xzL1NjcmlwdHMvbGlicmFyaWVzL3dlYmtpdGNvcmVweS93ZWJraXRjb3JlcHkvX19p
bml0X18ucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0Y29y
ZXB5L3dlYmtpdGNvcmVweS9fX2luaXRfXy5weQkocmV2aXNpb24gMjc2OTU5KQorKysgVG9vbHMv
U2NyaXB0cy9saWJyYXJpZXMvd2Via2l0Y29yZXB5L3dlYmtpdGNvcmVweS9fX2luaXRfXy5weQko
d29ya2luZyBjb3B5KQpAQCAtMzcsNyArMzcsNyBAQCBmcm9tIHdlYmtpdGNvcmVweS5vdXRwdXRf
Y2FwdHVyZSBpbXBvcnQgCiBmcm9tIHdlYmtpdGNvcmVweS50YXNrX3Bvb2wgaW1wb3J0IFRhc2tQ
b29sCiBmcm9tIHdlYmtpdGNvcmVweS5jcmVkZW50aWFscyBpbXBvcnQgY3JlZGVudGlhbHMKIAot
dmVyc2lvbiA9IFZlcnNpb24oMCwgNSwgMTIpCit2ZXJzaW9uID0gVmVyc2lvbigwLCA1LCAxMykK
IAogZnJvbSB3ZWJraXRjb3JlcHkuYXV0b2luc3RhbGwgaW1wb3J0IFBhY2thZ2UsIEF1dG9JbnN0
YWxsCiBpZiBzeXMudmVyc2lvbl9pbmZvID4gKDMsIDApOgpJbmRleDogVG9vbHMvU2NyaXB0cy9s
aWJyYXJpZXMvd2Via2l0Y29yZXB5L3dlYmtpdGNvcmVweS90YXNrX3Bvb2wucHkKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvU2NyaXB0cy9saWJyYXJpZXMvd2Via2l0Y29yZXB5L3dlYmtpdGNvcmVweS90
YXNrX3Bvb2wucHkJKHJldmlzaW9uIDI3Njk1OSkKKysrIFRvb2xzL1NjcmlwdHMvbGlicmFyaWVz
L3dlYmtpdGNvcmVweS93ZWJraXRjb3JlcHkvdGFza19wb29sLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0zMCwxNyArMzAsMTcgQEAgaW1wb3J0IHN5cwogZnJvbSB3ZWJraXRjb3JlcHkgaW1wb3J0IE91
dHB1dENhcHR1cmUsIFRpbWVvdXQsIGxvZwogCiAKLWNsYXNzIE1lc3NhZ2Uob2JqZWN0KToKK2Ns
YXNzIF9NZXNzYWdlKG9iamVjdCk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHdobz1Ob25lKToK
LSAgICAgICAgc2VsZi53aG8gPSB3aG8gb3IgUHJvY2Vzcy5uYW1lCisgICAgICAgIHNlbGYud2hv
ID0gd2hvIG9yIF9Qcm9jZXNzLm5hbWUKIAogICAgIGRlZiBfX2NhbGxfXyhzZWxmLCBjYWxsZXIp
OgogICAgICAgICBOb3RJbXBsZW1lbnRlZCgpCiAKIAotY2xhc3MgVGFzayhNZXNzYWdlKToKK2Ns
YXNzIF9UYXNrKF9NZXNzYWdlKToKICAgICBkZWYgX19pbml0X18oc2VsZiwgZnVuY3Rpb24sIGlk
LCAqYXJncywgKiprd2FyZ3MpOgotICAgICAgICBzdXBlcihUYXNrLCBzZWxmKS5fX2luaXRfXygp
CisgICAgICAgIHN1cGVyKF9UYXNrLCBzZWxmKS5fX2luaXRfXygpCiAKICAgICAgICAgc2VsZi5m
dW5jdGlvbiA9IGZ1bmN0aW9uCiAgICAgICAgIHNlbGYuaWQgPSBpZApAQCAtNTEsOSArNTEsOSBA
QCBjbGFzcyBUYXNrKE1lc3NhZ2UpOgogICAgICAgICByZXR1cm4gc2VsZi5mdW5jdGlvbigqc2Vs
Zi5hcmdzLCAqKnNlbGYua3dhcmdzKQogCiAKLWNsYXNzIFJlc3VsdChNZXNzYWdlKToKK2NsYXNz
IF9SZXN1bHQoX01lc3NhZ2UpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB2YWx1ZSwgaWQpOgot
ICAgICAgICBzdXBlcihSZXN1bHQsIHNlbGYpLl9faW5pdF9fKCkKKyAgICAgICAgc3VwZXIoX1Jl
c3VsdCwgc2VsZikuX19pbml0X18oKQogICAgICAgICBzZWxmLnZhbHVlID0gdmFsdWUKICAgICAg
ICAgc2VsZi5pZCA9IGlkCiAKQEAgLTYzLDIxICs2MywyMSBAQCBjbGFzcyBSZXN1bHQoTWVzc2Fn
ZSk6CiAgICAgICAgIHJldHVybiBzZWxmLnZhbHVlCiAKIAotY2xhc3MgTG9nKE1lc3NhZ2UpOgor
Y2xhc3MgX0xvZyhfTWVzc2FnZSk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHJlY29yZCk6Ci0g
ICAgICAgIHN1cGVyKExvZywgc2VsZikuX19pbml0X18oKQorICAgICAgICBzdXBlcihfTG9nLCBz
ZWxmKS5fX2luaXRfXygpCiAgICAgICAgIHNlbGYucmVjb3JkID0gcmVjb3JkCiAKICAgICBkZWYg
X19jYWxsX18oc2VsZiwgY2FsbGVyKToKICAgICAgICAgbG9nZ2luZy5nZXRMb2dnZXIoc2VsZi5y
ZWNvcmQubmFtZSkubG9nKHNlbGYucmVjb3JkLmxldmVsbm8sICd7fSB7fScuZm9ybWF0KHNlbGYu
d2hvLCBzZWxmLnJlY29yZC5nZXRNZXNzYWdlKCkpKQogCiAKLWNsYXNzIFByaW50KE1lc3NhZ2Up
OgorY2xhc3MgX1ByaW50KF9NZXNzYWdlKToKICAgICBzdGRvdXQgPSAxCiAgICAgc3RkZXJyID0g
MgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGxpbmVzLCBzdHJlYW09c3Rkb3V0KToKLSAgICAg
ICAgc3VwZXIoUHJpbnQsIHNlbGYpLl9faW5pdF9fKCkKKyAgICAgICAgc3VwZXIoX1ByaW50LCBz
ZWxmKS5fX2luaXRfXygpCiAgICAgICAgIHNlbGYubGluZXMgPSBsaW5lcwogICAgICAgICBzZWxm
LnN0cmVhbSA9IHN0cmVhbQogCkBAIC05MCwzMiArOTAsMzIgQEAgY2xhc3MgUHJpbnQoTWVzc2Fn
ZSk6CiAgICAgICAgICAgICBzdHJlYW0ud3JpdGUoJ3t9XG4nLmZvcm1hdChsaW5lKSkKIAogCi1j
bGFzcyBTdGF0ZShNZXNzYWdlKToKK2NsYXNzIF9TdGF0ZShfTWVzc2FnZSk6CiAgICAgU1RBUlRJ
TkcsIFNUT1BQSU5HID0gMSwgMAogICAgIFNUQVRFUyA9IFtTVEFSVElORywgU1RPUFBJTkddCiAK
ICAgICBkZWYgX19pbml0X18oc2VsZiwgc3RhdGUpOgotICAgICAgICBzdXBlcihTdGF0ZSwgc2Vs
ZikuX19pbml0X18oKQorICAgICAgICBzdXBlcihfU3RhdGUsIHNlbGYpLl9faW5pdF9fKCkKICAg
ICAgICAgc2VsZi5zdGF0ZSA9IHN0YXRlCiAKICAgICBkZWYgX19jYWxsX18oc2VsZiwgY2FsbGVy
KToKICAgICAgICAgbG9nLmluZm8oJ3t9IHt9Jy5mb3JtYXQoCiAgICAgICAgICAgICBzZWxmLndo
bywgewotICAgICAgICAgICAgICAgIFN0YXRlLlNUQVJUSU5HOiAnc3RhcnRpbmcnLAotICAgICAg
ICAgICAgICAgIFN0YXRlLlNUT1BQSU5HOiAnc3RvcHBpbmcnLAorICAgICAgICAgICAgICAgIHNl
bGYuU1RBUlRJTkc6ICdzdGFydGluZycsCisgICAgICAgICAgICAgICAgc2VsZi5TVE9QUElORzog
J3N0b3BwaW5nJywKICAgICAgICAgICAgIH0uZ2V0KHNlbGYuc3RhdGUsIHNlbGYuc3RhdGUpLAog
ICAgICAgICApKQogICAgICAgICBpZiBjYWxsZXI6CiAgICAgICAgICAgICBjYWxsZXIuX3N0YXJ0
ZWQgKz0gewotICAgICAgICAgICAgICAgIFN0YXRlLlNUQVJUSU5HOiAxLAotICAgICAgICAgICAg
ICAgIFN0YXRlLlNUT1BQSU5HOiAtMSwKKyAgICAgICAgICAgICAgICBzZWxmLlNUQVJUSU5HOiAx
LAorICAgICAgICAgICAgICAgIHNlbGYuU1RPUFBJTkc6IC0xLAogICAgICAgICAgICAgfS5nZXQo
c2VsZi5zdGF0ZSwgMCkKICAgICAgICAgcmV0dXJuIHNlbGYuc3RhdGUKIAogCi1jbGFzcyBDaGls
ZEV4Y2VwdGlvbihNZXNzYWdlKToKK2NsYXNzIF9DaGlsZEV4Y2VwdGlvbihfTWVzc2FnZSk6CiAg
ICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4Y19pbmZvPU5vbmUpOgotICAgICAgICBzdXBlcihDaGls
ZEV4Y2VwdGlvbiwgc2VsZikuX19pbml0X18oKQorICAgICAgICBzdXBlcihfQ2hpbGRFeGNlcHRp
b24sIHNlbGYpLl9faW5pdF9fKCkKICAgICAgICAgc2VsZi5leGNfaW5mbyA9IGV4Y19pbmZvIG9y
IHN5cy5leGNfaW5mbygpCiAKICAgICBkZWYgX19jYWxsX18oc2VsZiwgY2FsbGVyKToKQEAgLTEy
OCw3ICsxMjgsNyBAQCBjbGFzcyBDaGlsZEV4Y2VwdGlvbihNZXNzYWdlKToKICAgICAgICAgcmVy
YWlzZSgqc2VsZi5leGNfaW5mbykKIAogCi1jbGFzcyBCaURpcmVjdGlvbmFsUXVldWUob2JqZWN0
KToKK2NsYXNzIF9CaURpcmVjdGlvbmFsUXVldWUob2JqZWN0KToKICAgICBkZWYgX19pbml0X18o
c2VsZiwgb3V0Z29pbmc9Tm9uZSwgaW5jb21pbmc9Tm9uZSk6CiAgICAgICAgIHNlbGYub3V0Z29p
bmcgPSBvdXRnb2luZyBvciBtdWx0aXByb2Nlc3NpbmcuUXVldWUoKQogICAgICAgICBzZWxmLmlu
Y29taW5nID0gaW5jb21pbmcgb3IgbXVsdGlwcm9jZXNzaW5nLlF1ZXVlKCkKQEAgLTE0NywxNyAr
MTQ3LDE4IEBAIGNsYXNzIEJpRGlyZWN0aW9uYWxRdWV1ZShvYmplY3QpOgogICAgICAgICAgICAg
cmV0dXJuIHNlbGYuaW5jb21pbmcuZ2V0KCkKIAogCi1jbGFzcyBQcm9jZXNzKG9iamVjdCk6Citj
bGFzcyBfUHJvY2VzcyhvYmplY3QpOgogICAgIG5hbWUgPSBOb25lCiAgICAgd29ya2luZyA9IEZh
bHNlCisgICAgcXVldWUgPSBOb25lCiAKICAgICBjbGFzcyBMb2dIYW5kbGVyKGxvZ2dpbmcuSGFu
ZGxlcik6CiAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBxdWV1ZSwgKiprd2FyZ3MpOgogICAg
ICAgICAgICAgc2VsZi5fcXVldWUgPSBxdWV1ZQotICAgICAgICAgICAgc3VwZXIoUHJvY2Vzcy5M
b2dIYW5kbGVyLCBzZWxmKS5fX2luaXRfXygqKmt3YXJncykKKyAgICAgICAgICAgIHN1cGVyKF9Q
cm9jZXNzLkxvZ0hhbmRsZXIsIHNlbGYpLl9faW5pdF9fKCoqa3dhcmdzKQogCiAgICAgICAgIGRl
ZiBlbWl0KHNlbGYsIHJlY29yZCk6Ci0gICAgICAgICAgICBzZWxmLl9xdWV1ZS5zZW5kKExvZyhy
ZWNvcmQpKQorICAgICAgICAgICAgc2VsZi5fcXVldWUuc2VuZChfTG9nKHJlY29yZCkpCiAKICAg
ICBjbGFzcyBTdHJlYW0oaW8uSU9CYXNlKToKICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhh
bmRsZSwgcXVldWUpOgpAQCAtMTY5LDcgKzE3MCw3IEBAIGNsYXNzIFByb2Nlc3Mob2JqZWN0KToK
IAogICAgICAgICBkZWYgZmx1c2goc2VsZik6CiAgICAgICAgICAgICBpZiBzZWxmLmNhY2hlIGlz
IG5vdCBOb25lOgotICAgICAgICAgICAgICAgIHNlbGYuX3F1ZXVlLnNlbmQoUHJpbnQobGluZXM9
W3NlbGYuY2FjaGVdLCBzdHJlYW09c2VsZi5oYW5kbGUpKQorICAgICAgICAgICAgICAgIHNlbGYu
X3F1ZXVlLnNlbmQoX1ByaW50KGxpbmVzPVtzZWxmLmNhY2hlXSwgc3RyZWFtPXNlbGYuaGFuZGxl
KSkKICAgICAgICAgICAgICAgICBzZWxmLmNhY2hlID0gTm9uZQogCiAgICAgICAgIGRlZiB3cml0
ZWxpbmVzKHNlbGYsIGxpbmVzKToKQEAgLTE4NSw3ICsxODYsNyBAQCBjbGFzcyBQcm9jZXNzKG9i
amVjdCk6CiAgICAgICAgICAgICAgICAgZWxpZiBjIG5vdCBpbiBbJ1xyJywgJ1wwJ106CiAgICAg
ICAgICAgICAgICAgICAgIHNlbGYuY2FjaGUgPSBjIGlmIHNlbGYuY2FjaGUgaXMgTm9uZSBlbHNl
IChzZWxmLmNhY2hlICsgYykKICAgICAgICAgICAgIGlmIHRvX2JlX3ByaW50ZWQ6Ci0gICAgICAg
ICAgICAgICAgc2VsZi5fcXVldWUuc2VuZChQcmludChsaW5lcz10b19iZV9wcmludGVkLCBzdHJl
YW09c2VsZi5oYW5kbGUpKQorICAgICAgICAgICAgICAgIHNlbGYuX3F1ZXVlLnNlbmQoX1ByaW50
KGxpbmVzPXRvX2JlX3ByaW50ZWQsIHN0cmVhbT1zZWxmLmhhbmRsZSkpCiAgICAgICAgICAgICBy
ZXR1cm4gbGVuKGRhdGEpCiAKICAgICAgICAgQHByb3BlcnR5CkBAIC0yNTIsOSArMjUzLDEwIEBA
IGNsYXNzIFByb2Nlc3Mob2JqZWN0KToKICAgICAgICAgbG9nZ2VyLmFkZEhhbmRsZXIoY2xzLkxv
Z0hhbmRsZXIocXVldWUpKQogICAgICAgICBsb2dnZXIuc2V0TGV2ZWwobG9nbGV2ZWwpCiAKLSAg
ICAgICAgcXVldWUuc2VuZChTdGF0ZShTdGF0ZS5TVEFSVElORykpCisgICAgICAgIGNscy5xdWV1
ZSA9IHF1ZXVlCisgICAgICAgIHF1ZXVlLnNlbmQoX1N0YXRlKF9TdGF0ZS5TVEFSVElORykpCiAK
LSAgICAgICAgd2l0aCBPdXRwdXRDYXB0dXJlLlJlcGxhY2VTeXNTdHJlYW0oJ3N0ZGVycicsIGNs
cy5TdHJlYW0oUHJpbnQuc3RkZXJyLCBxdWV1ZSkpLCBPdXRwdXRDYXB0dXJlLlJlcGxhY2VTeXNT
dHJlYW0oJ3N0ZG91dCcsIGNscy5TdHJlYW0oUHJpbnQuc3Rkb3V0LCBxdWV1ZSkpOgorICAgICAg
ICB3aXRoIE91dHB1dENhcHR1cmUuUmVwbGFjZVN5c1N0cmVhbSgnc3RkZXJyJywgY2xzLlN0cmVh
bShfUHJpbnQuc3RkZXJyLCBxdWV1ZSkpLCBPdXRwdXRDYXB0dXJlLlJlcGxhY2VTeXNTdHJlYW0o
J3N0ZG91dCcsIGNscy5TdHJlYW0oX1ByaW50LnN0ZG91dCwgcXVldWUpKToKICAgICAgICAgICAg
IHRyeToKICAgICAgICAgICAgICAgICBwaWNrbGluZ19zdXBwb3J0Lmluc3RhbGwoKQogICAgICAg
ICAgICAgICAgIGlmIHNldHVwOgpAQCAtMjY0LDExICsyNjYsMTEgQEAgY2xhc3MgUHJvY2Vzcyhv
YmplY3QpOgogICAgICAgICAgICAgICAgICAgICB0YXNrID0gcXVldWUucmVjZWl2ZSgpCiAgICAg
ICAgICAgICAgICAgICAgIGlmIG5vdCB0YXNrOgogICAgICAgICAgICAgICAgICAgICAgICAgYnJl
YWsKLSAgICAgICAgICAgICAgICAgICAgcXVldWUuc2VuZChSZXN1bHQodmFsdWU9dGFzayhOb25l
KSwgaWQ9dGFzay5pZCkpCisgICAgICAgICAgICAgICAgICAgIHF1ZXVlLnNlbmQoX1Jlc3VsdCh2
YWx1ZT10YXNrKE5vbmUpLCBpZD10YXNrLmlkKSkKIAogICAgICAgICAgICAgZXhjZXB0IEJhc2VF
eGNlcHRpb246CiAgICAgICAgICAgICAgICAgdHlwLCBleGNlcHRpb24sIHRyYWNlYmFjayA9IHN5
cy5leGNfaW5mbygpCi0gICAgICAgICAgICAgICAgcXVldWUuc2VuZChDaGlsZEV4Y2VwdGlvbihl
eGNfaW5mbz0oCisgICAgICAgICAgICAgICAgcXVldWUuc2VuZChfQ2hpbGRFeGNlcHRpb24oZXhj
X2luZm89KAogICAgICAgICAgICAgICAgICAgICB0eXAsIHR5cCgne30gKGZyb20ge30pJy5mb3Jt
YXQoc3RyKGV4Y2VwdGlvbiksIG5hbWUpKSwgdHJhY2ViYWNrLAogICAgICAgICAgICAgICAgICkp
KQogCkBAIC0yNzcsMTAgKzI3OSwyMSBAQCBjbGFzcyBQcm9jZXNzKG9iamVjdCk6CiAgICAgICAg
ICAgICAgICAgICAgIHRlYXJkb3duKCp0ZWFyZG93bmFyZ3MsICoqdGVhcmRvd25rd2FyZ3MpCiAg
ICAgICAgICAgICAgICAgc3lzLnN0ZG91dC5mbHVzaCgpCiAgICAgICAgICAgICAgICAgc3lzLnN0
ZGVyci5mbHVzaCgpCi0gICAgICAgICAgICAgICAgcXVldWUuc2VuZChTdGF0ZShTdGF0ZS5TVE9Q
UElORykpCisgICAgICAgICAgICAgICAgcXVldWUuc2VuZChfU3RhdGUoX1N0YXRlLlNUT1BQSU5H
KSkKKyAgICAgICAgICAgICAgICBjbHMucXVldWUgPSBOb25lCiAKIAogY2xhc3MgVGFza1Bvb2wo
b2JqZWN0KToKKyAgICBNZXNzYWdlID0gX01lc3NhZ2UKKyAgICBUYXNrID0gX1Rhc2sKKyAgICBS
ZXN1bHQgPSBfUmVzdWx0CisgICAgTG9nID0gX0xvZworICAgIFByaW50ID0gX1ByaW50CisgICAg
U3RhdGUgPSBfU3RhdGUKKyAgICBDaGlsZEV4Y2VwdGlvbiA9IF9DaGlsZEV4Y2VwdGlvbgorICAg
IEJpRGlyZWN0aW9uYWxRdWV1ZSA9IF9CaURpcmVjdGlvbmFsUXVldWUKKyAgICBQcm9jZXNzID0g
X1Byb2Nlc3MKKwogCiAgICAgY2xhc3MgRXhjZXB0aW9uKFJ1bnRpbWVFcnJvcik6CiAgICAgICAg
IHBhc3MKQEAgLTI5NCwyMCArMzA3LDIwIEBAIGNsYXNzIFRhc2tQb29sKG9iamVjdCk6CiAgICAg
ICAgIGltcG9ydCB0YmxpYgogCiAgICAgICAgIG5hbWUgPSBuYW1lIG9yICd3b3JrZXInCi0gICAg
ICAgIGlmIG5hbWUgPT0gUHJvY2Vzcy5uYW1lOgorICAgICAgICBpZiBuYW1lID09IHNlbGYuUHJv
Y2Vzcy5uYW1lOgogICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiUGFyZW50IHByb2Nlc3Mg
aXMgYWxyZWFkeSBuYW1lZCB7fSIuZm9ybWF0KG5hbWUpKQogCiAgICAgICAgIGlmIHdvcmtlcnMg
PCAxOgogICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignVGFza1Bvb2wgcmVxdWlyZXMgcG9z
aXRpdmUgbnVtYmVyIG9mIHdvcmtlcnMnKQogCi0gICAgICAgIHNlbGYucXVldWUgPSBCaURpcmVj
dGlvbmFsUXVldWUoKQorICAgICAgICBzZWxmLnF1ZXVlID0gc2VsZi5CaURpcmVjdGlvbmFsUXVl
dWUoKQogCiAgICAgICAgIHNlbGYud29ya2VycyA9IFttdWx0aXByb2Nlc3NpbmcuUHJvY2VzcygK
LSAgICAgICAgICAgIHRhcmdldD1Qcm9jZXNzLm1haW4sCisgICAgICAgICAgICB0YXJnZXQ9c2Vs
Zi5Qcm9jZXNzLm1haW4sCiAgICAgICAgICAgICBhcmdzPSgKICAgICAgICAgICAgICAgICAne30v
e30nLmZvcm1hdChuYW1lLCBjb3VudCksIGxvZ2dpbmcuZ2V0TG9nZ2VyKCkuZ2V0RWZmZWN0aXZl
TGV2ZWwoKSwKICAgICAgICAgICAgICAgICBzZXR1cCwgc2V0dXBhcmdzLCBzZXR1cGt3YXJncywK
LSAgICAgICAgICAgICAgICBCaURpcmVjdGlvbmFsUXVldWUob3V0Z29pbmc9c2VsZi5xdWV1ZS5p
bmNvbWluZywgaW5jb21pbmc9c2VsZi5xdWV1ZS5vdXRnb2luZyksCisgICAgICAgICAgICAgICAg
c2VsZi5CaURpcmVjdGlvbmFsUXVldWUob3V0Z29pbmc9c2VsZi5xdWV1ZS5pbmNvbWluZywgaW5j
b21pbmc9c2VsZi5xdWV1ZS5vdXRnb2luZyksCiAgICAgICAgICAgICAgICAgdGVhcmRvd24sIHRl
YXJkb3duYXJncywgdGVhcmRvd25rd2FyZ3MsCiAgICAgICAgICAgICApLAogICAgICAgICApIGZv
ciBjb3VudCBpbiByYW5nZSh3b3JrZXJzKV0KQEAgLTMzMCw3ICszNDMsNyBAQCBjbGFzcyBUYXNr
UG9vbChvYmplY3QpOgogICAgICAgICBjYWxsYmFjayA9IGt3YXJncy5wb3AoJ2NhbGxiYWNrJywg
Tm9uZSkKICAgICAgICAgaWYgY2FsbGJhY2s6CiAgICAgICAgICAgICBzZWxmLmNhbGxiYWNrc1tz
ZWxmLl9pZF9jb3VudF0gPSBjYWxsYmFjawotICAgICAgICBzZWxmLnF1ZXVlLnNlbmQoVGFzayhm
dW5jdGlvbiwgc2VsZi5faWRfY291bnQsICphcmdzLCAqKmt3YXJncykpCisgICAgICAgIHNlbGYu
cXVldWUuc2VuZChzZWxmLlRhc2soZnVuY3Rpb24sIHNlbGYuX2lkX2NvdW50LCAqYXJncywgKipr
d2FyZ3MpKQogICAgICAgICBzZWxmLl9pZF9jb3VudCArPSAxCiAKICAgICAgICAgIyBGb3IgZXZl
cnkgYmxvY2sgb2YgdGFza3MgcGFzc2VkIHRvIG91ciB3b3JrZXJzLCB3ZSBuZWVkIGNvbnN1bWUg
bWVzc2FnZXMgc28gd2UgZG9uJ3QgZ2V0IGRlYWRsb2NrZWQK
</data>

          </attachment>
      

    </bug>

</bugzilla>