<?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>179828</bug_id>
          
          <creation_ts>2017-11-17 10:23:53 -0800</creation_ts>
          <short_desc>run-webkit-tests not gathering crash logs on Cygwin Python and Windows Python</short_desc>
          <delta_ts>2019-05-20 18:54:17 -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=179514</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="Fujii Hironori">fujii</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1373134</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-11-17 10:23:53 -0800</bug_when>
    <thetext>This seems like is has been a long-standing bug, as discussed in &lt;https://bugs.webkit.org/show_bug.cgi?id=179514&gt;.

Example of this &lt;https://build.webkit.org/builders/Apple%20Win%207%20Release%20%28Tests%29/builds/3191&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536740</commentid>
    <comment_count>1</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-16 01:23:46 -0700</bug_when>
    <thetext>find_system_pid has been removed in Bug 179514.
However it is still needed because Windows PID should be stored in &apos;pid_to_system_pid&apos; dictionary before crashing DumpRenderTree in Cygwin Python.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536741</commentid>
    <comment_count>2</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-16 01:27:34 -0700</bug_when>
    <thetext>There is one more problem.
CrashLog format has been slightly changed. I don&apos;t know since when.

CrashLogs.GLOBAL_PID_REGEX should be accommodate the new format

Current regexp:

&gt; GLOBAL_PID_REGEX = re.compile(r&apos;\s+Global\s+PID:\s+\[(?P&lt;pid&gt;\d+)\]&apos;)

Actual text:

&gt; Global    D1    PID: [9976]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536743</commentid>
    <comment_count>3</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-16 01:50:57 -0700</bug_when>
    <thetext>We can use /proc/$pid/winpid

Convert a Cygwin PID to a Windows PID
https://stackoverflow.com/a/44862746/2691131</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536761</commentid>
    <comment_count>4</comment_count>
      <attachid>370035</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-16 03:30:46 -0700</bug_when>
    <thetext>Created attachment 370035
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536804</commentid>
    <comment_count>5</comment_count>
      <attachid>370035</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-16 08:12:57 -0700</bug_when>
    <thetext>Comment on attachment 370035
Patch

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

&gt; Tools/Scripts/webkitpy/port/win.py:-432
&gt; -            crash_log = crash_logs.find_newest_log(name, system_pid, include_errors=True, newer_than=newer_than)

Is the system PID actually useful for something other than crashlogs?

It looks like the original intention here was to have the _get_crash_log function do the cygwin mapping magic, and this function should have all the needed information to generate the system PID. If the system PID is only useful for crashlogs, it seems like it should live entirely in this function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536919</commentid>
    <comment_count>6</comment_count>
      <attachid>370035</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-16 14:41:01 -0700</bug_when>
    <thetext>Comment on attachment 370035
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/port/win.py:-432
&gt;&gt; -            crash_log = crash_logs.find_newest_log(name, system_pid, include_errors=True, newer_than=newer_than)
&gt; 
&gt; Is the system PID actually useful for something other than crashlogs?
&gt; 
&gt; It looks like the original intention here was to have the _get_crash_log function do the cygwin mapping magic, and this function should have all the needed information to generate the system PID. If the system PID is only useful for crashlogs, it seems like it should live entirely in this function.

CrashLogs is constructed after crashing. It’s too late to get pid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537004</commentid>
    <comment_count>7</comment_count>
      <attachid>370035</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-16 20:12:48 -0700</bug_when>
    <thetext>Comment on attachment 370035
Patch

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

&gt; Tools/Scripts/webkitpy/common/system/crashlogs.py:40
&gt; +    GLOBAL_PID_REGEX = re.compile(r&apos;\s+Global\b.+\bPID:\s+\[(?P&lt;pid&gt;\d+)\]&apos;)

This new format actually makes me quire uncomfortable....what exactly is new between &apos;Global&apos; and &apos;PID&apos;? This new regex would match any string between the two, so long as &apos;Global&apos; and &apos;PID:&apos; are separate words. Do we have examples of the new string format?

&gt; Tools/Scripts/webkitpy/port/server_process.py:126
&gt; +    def _find_system_pid(self, pid):

Making this a function doesn&apos;t seem needed, since it could be a one-line.

self._system_pid = int(self._port._filesystem.read_text_file(&apos;/proc/%d/winpid&apos; % pid)) if self._port.host.platform.is_cygwin() else pid

&gt;&gt;&gt; Tools/Scripts/webkitpy/port/win.py:-432
&gt;&gt;&gt; -            crash_log = crash_logs.find_newest_log(name, system_pid, include_errors=True, newer_than=newer_than)
&gt;&gt; 
&gt;&gt; Is the system PID actually useful for something other than crashlogs?
&gt;&gt; 
&gt;&gt; It looks like the original intention here was to have the _get_crash_log function do the cygwin mapping magic, and this function should have all the needed information to generate the system PID. If the system PID is only useful for crashlogs, it seems like it should live entirely in this function.
&gt; 
&gt; CrashLogs is constructed after crashing. It’s too late to get pid.

That makes sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537084</commentid>
    <comment_count>8</comment_count>
      <attachid>370035</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-17 04:54:33 -0700</bug_when>
    <thetext>Comment on attachment 370035
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/common/system/crashlogs.py:40
&gt;&gt; +    GLOBAL_PID_REGEX = re.compile(r&apos;\s+Global\b.+\bPID:\s+\[(?P&lt;pid&gt;\d+)\]&apos;)
&gt; 
&gt; This new format actually makes me quire uncomfortable....what exactly is new between &apos;Global&apos; and &apos;PID&apos;? This new regex would match any string between the two, so long as &apos;Global&apos; and &apos;PID:&apos; are separate words. Do we have examples of the new string format?

See comment 2 and bug 197941 comment 2.

&gt;&gt; Tools/Scripts/webkitpy/port/server_process.py:126
&gt;&gt; +    def _find_system_pid(self, pid):
&gt; 
&gt; Making this a function doesn&apos;t seem needed, since it could be a one-line.
&gt; 
&gt; self._system_pid = int(self._port._filesystem.read_text_file(&apos;/proc/%d/winpid&apos; % pid)) if self._port.host.platform.is_cygwin() else pid

Will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537106</commentid>
    <comment_count>9</comment_count>
      <attachid>370035</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-17 08:09:57 -0700</bug_when>
    <thetext>Comment on attachment 370035
Patch

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

&gt;&gt;&gt; Tools/Scripts/webkitpy/common/system/crashlogs.py:40
&gt;&gt;&gt; +    GLOBAL_PID_REGEX = re.compile(r&apos;\s+Global\b.+\bPID:\s+\[(?P&lt;pid&gt;\d+)\]&apos;)
&gt;&gt; 
&gt;&gt; This new format actually makes me quire uncomfortable....what exactly is new between &apos;Global&apos; and &apos;PID&apos;? This new regex would match any string between the two, so long as &apos;Global&apos; and &apos;PID:&apos; are separate words. Do we have examples of the new string format?
&gt; 
&gt; See comment 2 and bug 197941 comment 2.

Could we put a comment above the regex with something like:

# Matches a string like &apos;    Global    D1    PID: [14516]&apos;

Actually seeing the string we&apos;re matching makes me feel better about the regex changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537512</commentid>
    <comment_count>10</comment_count>
      <attachid>370233</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-19 19:39:17 -0700</bug_when>
    <thetext>Created attachment 370233
Patch

* Addressed review feedbacks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537783</commentid>
    <comment_count>11</comment_count>
      <attachid>370233</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-20 18:53:21 -0700</bug_when>
    <thetext>Comment on attachment 370233
Patch

Clearing flags on attachment: 370233

Committed r245544: &lt;https://trac.webkit.org/changeset/245544&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537784</commentid>
    <comment_count>12</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2019-05-20 18:53:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537785</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-20 18:54:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/50970026&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370035</attachid>
            <date>2019-05-16 03:30:46 -0700</date>
            <delta_ts>2019-05-19 19:39:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179828-20190516193045.patch</filename>
            <type>text/plain</type>
            <size>7396</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1MzIxCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNDBhNjBiNTAyODM3ZWZiM2IwYjZlYTYwZWJmMzYyZDRj
NWNmNjFkOS4uMjIzMjJlZWJjMGEzYzcxZGRhYzZhZWI1NWM1NTc3Njg5MjgzYjFjOCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMz
IEBACisyMDE5LTA1LTE2ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgorCisgICAgICAgIHJ1bi13ZWJraXQtdGVzdHMgbm90IGdhdGhlcmluZyBjcmFzaCBsb2dzIG9u
IEN5Z3dpbiBQeXRob24gYW5kIFdpbmRvd3MgUHl0aG9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk4MjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZXJ2ZXJQcm9jZXNzIHNob3VsZCBzdG9yZSBpdHMg
V2luZG93cyBQSUQgZm9yIEN5Z3dpbiBiZWNhdXNlIHRoZQorICAgICAgICBXaW5kb3dzIFBJRCBp
cyByZXF1aXJlZCB0byBnZXQgYSBjb3JyZWN0IENyYXNoTG9nLgorCisgICAgICAgIENyYXNoTG9n
IGZvcm1hdCBoYXMgYmVlbiBjaGFuZ2VkLiBDcmFzaExvZ3MuR0xPQkFMX1BJRF9SRUdFWAorICAg
ICAgICBzaG91bGQgYWNjZXB0IHRoZSBuZXcgZm9ybWF0LgorCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9jb21tb24vc3lzdGVtL2NyYXNobG9ncy5weToKKyAgICAgICAgKENyYXNoTG9ncy5H
TE9CQUxfUElEX1JFR0VYKTogQWNjZXB0IGFueSB3b3JkcyBiZXR3ZWVuICdHbG9iYWwnIGFuZCAn
UElEOicuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvZHJpdmVyLnB5OgorICAg
ICAgICAoRHJpdmVyLmhhc19jcmFzaGVkKToKKyAgICAgICAgKERyaXZlci5fY2hlY2tfZm9yX2Ry
aXZlcl9jcmFzaF9vcl91bnJlc3BvbnNpdmVuZXNzKToKKyAgICAgICAgKERyaXZlci5fcmVhZF9i
bG9jayk6CisgICAgICAgIFN0b3JlIHNlcnZlcl9wcm9jZXNzLnN5c3RlbV9waWQoKSB0byBzZWxm
Ll9jcmFzaGVkX3BpZCBpbnN0ZWFkIG9mIHNlcnZlcl9wcm9jZXNzLnBpZCgpLgorCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5OgorICAgICAgICAoU2Vy
dmVyUHJvY2Vzcy5fX2luaXRfXyk6CisgICAgICAgIChTZXJ2ZXJQcm9jZXNzLnN5c3RlbV9waWQp
OiBBZGRlZC4KKyAgICAgICAgKFNlcnZlclByb2Nlc3MuX2ZpbmRfc3lzdGVtX3BpZCk6IEFkZGVk
LgorICAgICAgICAoU2VydmVyUHJvY2Vzcy5fc3RhcnQpOiBTZXQgc2VsZi5fc3lzdGVtX3BpZC4K
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvd2luLnB5OgorICAgICAgICAoV2luUG9y
dC5fZ2V0X2NyYXNoX2xvZyk6IFJlbW92ZWQgYnJva2VuIG9sZCBjb2RlIGNvbnZlcnRpbmcgQ3ln
d2luIHBpZCB0byBXaW5kb3dzIHBpZC4KKwogMjAxOS0wNS0xNCAgQW5keSBFc3RlcyAgPGFlc3Rl
c0BhcHBsZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFBheV0gUGF5bWVudCBBUElzIHNob3VsZCBi
ZSBjb21wbGV0ZWx5IGRpc2FibGVkIGluIHdlYiB2aWV3cyBpbnRvIHdoaWNoIGNsaWVudHMgaGF2
ZSBpbmplY3RlZCB1c2VyIHNjcmlwdHMKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvY29tbW9uL3N5c3RlbS9jcmFzaGxvZ3MucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2Nv
bW1vbi9zeXN0ZW0vY3Jhc2hsb2dzLnB5CmluZGV4IDhlNWZlMTY0YzlhZWI2ZjQ4OGU5YjU1OWQ3
NThjMjFiZjdlNjg3ZDUuLmIxYWRlZmU0ZWE4ZDI4YzFhNzBiNzhmMjBhNzI0NmU5ZDk5MzA4NTUg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9jcmFzaGxv
Z3MucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2NyYXNobG9n
cy5weQpAQCAtMzcsNyArMzcsNyBAQCBfbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18p
CiAKIGNsYXNzIENyYXNoTG9ncyhvYmplY3QpOgogCi0gICAgR0xPQkFMX1BJRF9SRUdFWCA9IHJl
LmNvbXBpbGUocidccytHbG9iYWxccytQSUQ6XHMrXFsoP1A8cGlkPlxkKylcXScpCisgICAgR0xP
QkFMX1BJRF9SRUdFWCA9IHJlLmNvbXBpbGUocidccytHbG9iYWxcYi4rXGJQSUQ6XHMrXFsoP1A8
cGlkPlxkKylcXScpCiAgICAgRVhJVF9QUk9DRVNTX1BJRF9SRUdFWCA9IHJlLmNvbXBpbGUocidF
eGl0IHByb2Nlc3MgXGQrOig/UDxwaWQ+XHcrKSwgY29kZScpCiAgICAgREFSV0lOX1BST0NFU1Nf
UkVHRVggPSByZS5jb21waWxlKHInXlByb2Nlc3M6XHMrKD9QPHByb2Nlc3NfbmFtZT4uKikgXFso
P1A8cGlkPlxkKylcXSQnKQogCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Bv
cnQvZHJpdmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2RyaXZlci5weQppbmRl
eCA2NDJkNjg0ZDlkMGYyZDI2MmUwOWE0OWI1N2FjNDU3NmMxNjllMTVlLi5iOTk2Y2I1ZmQ1M2Jk
NWM3MzQwMjAyNzk4MDQzZGU2NTBkMjAzOWVjIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3BvcnQvZHJpdmVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9k
cml2ZXIucHkKQEAgLTM4Nyw3ICszODcsNyBAQCBjbGFzcyBEcml2ZXIob2JqZWN0KToKICAgICAg
ICAgICAgIHJldHVybiBUcnVlCiAgICAgICAgIGlmIHNlbGYuX3NlcnZlcl9wcm9jZXNzLmhhc19j
cmFzaGVkKCk6CiAgICAgICAgICAgICBzZWxmLl9jcmFzaGVkX3Byb2Nlc3NfbmFtZSA9IHNlbGYu
X3NlcnZlcl9wcm9jZXNzLnByb2Nlc3NfbmFtZSgpCi0gICAgICAgICAgICBzZWxmLl9jcmFzaGVk
X3BpZCA9IHNlbGYuX3NlcnZlcl9wcm9jZXNzLnBpZCgpCisgICAgICAgICAgICBzZWxmLl9jcmFz
aGVkX3BpZCA9IHNlbGYuX3NlcnZlcl9wcm9jZXNzLnN5c3RlbV9waWQoKQogICAgICAgICAgICAg
cmV0dXJuIFRydWUKICAgICAgICAgcmV0dXJuIEZhbHNlCiAKQEAgLTUzNSw3ICs1MzUsNyBAQCBj
bGFzcyBEcml2ZXIob2JqZWN0KToKICAgICAgICAgY3Jhc2hlZF9jaGVjayA9IGVycm9yX2xpbmUu
cnN0cmlwKCdcclxuJykKICAgICAgICAgaWYgY3Jhc2hlZF9jaGVjayA9PSAiI0NSQVNIRUQiOgog
ICAgICAgICAgICAgc2VsZi5fY3Jhc2hlZF9wcm9jZXNzX25hbWUgPSBzZWxmLl9zZXJ2ZXJfcHJv
Y2Vzcy5wcm9jZXNzX25hbWUoKQotICAgICAgICAgICAgc2VsZi5fY3Jhc2hlZF9waWQgPSBzZWxm
Ll9zZXJ2ZXJfcHJvY2Vzcy5waWQoKQorICAgICAgICAgICAgc2VsZi5fY3Jhc2hlZF9waWQgPSBz
ZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5zeXN0ZW1fcGlkKCkKICAgICAgICAgICAgIHJldHVybiBUcnVl
CiAgICAgICAgIGVsaWYgZXJyb3JfbGluZS5zdGFydHN3aXRoKCIjQ1JBU0hFRCAtICIpOgogICAg
ICAgICAgICAgbWF0Y2ggPSByZS5tYXRjaCgnI0NSQVNIRUQgLSAoXFMrKScsIGVycm9yX2xpbmUp
CkBAIC02OTMsNyArNjkzLDcgQEAgY2xhc3MgRHJpdmVyKG9iamVjdCk6CiAKICAgICAgICAgaWYg
YXNhbl92aW9sYXRpb25fZGV0ZWN0ZWQgYW5kIG5vdCBzZWxmLl9jcmFzaGVkX3Byb2Nlc3NfbmFt
ZToKICAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcHJvY2Vzc19uYW1lID0gc2VsZi5fc2VydmVy
X3Byb2Nlc3MucHJvY2Vzc19uYW1lKCkKLSAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcGlkID0g
c2VsZi5fc2VydmVyX3Byb2Nlc3MucGlkKCkKKyAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcGlk
ID0gc2VsZi5fc2VydmVyX3Byb2Nlc3Muc3lzdGVtX3BpZCgpCiAKICAgICAgICAgYmxvY2suZGVj
b2RlX2NvbnRlbnQoKQogICAgICAgICByZXR1cm4gYmxvY2sKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3BvcnQvZHJpdmVyX3VuaXR0ZXN0LnB5CmluZGV4IGU1MWQyYTM4Nzk0NGMwODVjMDVm
MGE4Yjg4YjAyNWZhNmIyZmYxZTYuLjMzMzg5NDE2ZTQwMmE3MGVmNTQzZjU0NDBjNGY1NGFjOWFi
YTJhOGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJfdW5p
dHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2RyaXZlcl91bml0dGVz
dC5weQpAQCAtMjI0LDYgKzIyNCw5IEBAIGNsYXNzIERyaXZlclRlc3QodW5pdHRlc3QuVGVzdENh
c2UpOgogICAgICAgICAgICAgZGVmIHBpZChzZWxmKToKICAgICAgICAgICAgICAgICByZXR1cm4g
MTIzNAogCisgICAgICAgICAgICBkZWYgc3lzdGVtX3BpZChzZWxmKToKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc2VsZi5waWQoKQorCiAgICAgICAgICAgICBkZWYgcHJvY2Vzc19uYW1lKHNlbGYp
OgogICAgICAgICAgICAgICAgIHJldHVybiAnRmFrZVNlcnZlclByb2Nlc3MnCiAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weSBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQppbmRleCA2NWY0N2E3N2Fk
YTc1YjRlZGVjMjI4ZTYzOGM4YjhjNmU5OTNkY2VmLi45MjllYWVhYTEwYzUzYmY1M2NmMjBmNDVj
MTBkZGQ4MjU0NmI5ZDEwIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQv
c2VydmVyX3Byb2Nlc3MucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L3NlcnZl
cl9wcm9jZXNzLnB5CkBAIC03Nyw2ICs3Nyw3IEBAIGNsYXNzIFNlcnZlclByb2Nlc3Mob2JqZWN0
KToKICAgICAgICAgc2VsZi5fdHJlYXRfbm9fZGF0YV9hc19jcmFzaCA9IHRyZWF0X25vX2RhdGFf
YXNfY3Jhc2gKICAgICAgICAgc2VsZi5fdGFyZ2V0X2hvc3QgPSB0YXJnZXRfaG9zdCBvciBwb3J0
X29iai5ob3N0CiAgICAgICAgIHNlbGYuX3BpZCA9IE5vbmUKKyAgICAgICAgc2VsZi5fc3lzdGVt
X3BpZCA9IE5vbmUKICAgICAgICAgc2VsZi5fY2hpbGRfcHJvY2Vzc2VzID0ge30KICAgICAgICAg
c2VsZi5fcmVzZXQoKQogCkBAIC05Myw2ICs5NCw5IEBAIGNsYXNzIFNlcnZlclByb2Nlc3Mob2Jq
ZWN0KToKICAgICBkZWYgcGlkKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fcGlkCiAKKyAg
ICBkZWYgc3lzdGVtX3BpZChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX3N5c3RlbV9waWQK
KwogICAgIGRlZiBfcmVzZXQoc2VsZik6CiAgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgJ19wcm9j
JywgTm9uZSk6CiAgICAgICAgICAgICBpZiBzZWxmLl9wcm9jLnN0ZGluOgpAQCAtMTE5LDYgKzEy
MywxMSBAQCBjbGFzcyBTZXJ2ZXJQcm9jZXNzKG9iamVjdCk6CiAgICAgICAgIGZsYWdzID0gZmNu
dGwuZmNudGwoZmlsZS5maWxlbm8oKSwgZmNudGwuRl9HRVRGTCkKICAgICAgICAgZmNudGwuZmNu
dGwoZmlsZS5maWxlbm8oKSwgZmNudGwuRl9TRVRGTCwgZmxhZ3MgfCBvcy5PX05PTkJMT0NLKQog
CisgICAgZGVmIF9maW5kX3N5c3RlbV9waWQoc2VsZiwgcGlkKToKKyAgICAgICAgaWYgc2VsZi5f
cG9ydC5ob3N0LnBsYXRmb3JtLmlzX2N5Z3dpbigpOgorICAgICAgICAgICAgcmV0dXJuIGludChz
ZWxmLl9wb3J0Ll9maWxlc3lzdGVtLnJlYWRfdGV4dF9maWxlKCcvcHJvYy8lZC93aW5waWQnICUg
cGlkKSkKKyAgICAgICAgcmV0dXJuIHBpZAorCiAgICAgZGVmIF9zdGFydChzZWxmKToKICAgICAg
ICAgaWYgc2VsZi5fcHJvYzoKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIiVzIGFscmVh
ZHkgcnVubmluZyIgJSBzZWxmLl9uYW1lKQpAQCAtMTMwLDYgKzEzOSw3IEBAIGNsYXNzIFNlcnZl
clByb2Nlc3Mob2JqZWN0KToKICAgICAgICAgICAgIGVudj1zZWxmLl9lbnYsCiAgICAgICAgICAg
ICB1bml2ZXJzYWxfbmV3bGluZXM9c2VsZi5fdW5pdmVyc2FsX25ld2xpbmVzKQogICAgICAgICBz
ZWxmLl9waWQgPSBzZWxmLl9wcm9jLnBpZAorICAgICAgICBzZWxmLl9zeXN0ZW1fcGlkID0gc2Vs
Zi5fZmluZF9zeXN0ZW1fcGlkKHNlbGYuX3BpZCkKICAgICAgICAgc2VsZi5fY2hpbGRfcHJvY2Vz
c2VzID0ge30KICAgICAgICAgaWYgbm90IHNlbGYuX3VzZV93aW4zMl9hcGlzOgogICAgICAgICAg
ICAgc2VsZi5fc2V0X2ZpbGVfbm9uYmxvY2tpbmcoc2VsZi5fcHJvYy5zdGRvdXQpCmRpZmYgLS1n
aXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvd2luLnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9wb3J0L3dpbi5weQppbmRleCA4ZGI3MzZmMDkxMWNiMGZlYjgyZWM2ZWE1NzgzM2Y4
Mzg3MWU2ZjA4Li42NmFkMTNkYjNjYTY4YzZiZTdlYjkwZWExZTRkODc0Y2VkNzhiMDA5IDEwMDY0
NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvd2luLnB5CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvcG9ydC93aW4ucHkKQEAgLTQyNSwxMSArNDI1LDcgQEAgY2xhc3MgV2lu
UG9ydChBcHBsZVBvcnQpOgogICAgICAgICBfbG9nLmRlYnVnKCdsb29raW5nIGZvciBjcmFzaCBs
b2cgZm9yICVzOiVzJyAlIChuYW1lLCBzdHIocGlkKSkpCiAgICAgICAgIGRlYWRsaW5lID0gbm93
ICsgNSAqIGludChzZWxmLmdldF9vcHRpb24oJ2NoaWxkX3Byb2Nlc3NlcycsIDEpKQogICAgICAg
ICB3aGlsZSBub3QgY3Jhc2hfbG9nIGFuZCBub3cgPD0gZGVhZGxpbmU6Ci0gICAgICAgICAgICAj
IElmIHRoZSBzeXN0ZW1fcGlkIGhhc24ndCBiZWVuIGRldGVybWluZWQgeWV0LCBqdXN0IHRyeSB3
aXRoIHRoZSBwYXNzZWQgaW4gcGlkLiAgV2UnbGwgYmUgY2hlY2tpbmcgYWdhaW4gbGF0ZXIKLSAg
ICAgICAgICAgIHN5c3RlbV9waWQgPSBzZWxmLl9leGVjdXRpdmUucGlkX3RvX3N5c3RlbV9waWQu
Z2V0KHBpZCkKLSAgICAgICAgICAgIGlmIHN5c3RlbV9waWQgPT0gTm9uZToKLSAgICAgICAgICAg
ICAgICBicmVhayAgIyBXZSBoYXZlbid0IG1hcHBlZCBjeWd3aW4gcGlkLT53aW4gcGlkIHlldAot
ICAgICAgICAgICAgY3Jhc2hfbG9nID0gY3Jhc2hfbG9ncy5maW5kX25ld2VzdF9sb2cobmFtZSwg
c3lzdGVtX3BpZCwgaW5jbHVkZV9lcnJvcnM9VHJ1ZSwgbmV3ZXJfdGhhbj1uZXdlcl90aGFuKQor
ICAgICAgICAgICAgY3Jhc2hfbG9nID0gY3Jhc2hfbG9ncy5maW5kX25ld2VzdF9sb2cobmFtZSwg
cGlkLCBpbmNsdWRlX2Vycm9ycz1UcnVlLCBuZXdlcl90aGFuPW5ld2VyX3RoYW4pCiAgICAgICAg
ICAgICBpZiBub3Qgd2FpdF9mb3JfbG9nOgogICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAg
ICAgICBpZiBub3QgY3Jhc2hfbG9nIG9yIG5vdCBbbGluZSBmb3IgbGluZSBpbiBjcmFzaF9sb2cu
c3BsaXRsaW5lcygpIGlmIGxpbmUuc3RhcnRzd2l0aCgncXVpdDonKV06Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>370233</attachid>
            <date>2019-05-19 19:39:17 -0700</date>
            <delta_ts>2019-05-20 18:53:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179828-20190520113915.patch</filename>
            <type>text/plain</type>
            <size>7058</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1NTA4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2I0MTU0Y2FjMTIyNDMzZmQ2NzA1NzIwMDcxODg4MjNm
MDA0YWI4Zi4uZDc2NTU3ODY0MmQxMDY1YzdmN2Y4NTE3YmFlY2ViZGY0YzczMGIyNyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0
IEBACisyMDE5LTA1LTE5ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgorCisgICAgICAgIHJ1bi13ZWJraXQtdGVzdHMgbm90IGdhdGhlcmluZyBjcmFzaCBsb2dzIG9u
IEN5Z3dpbiBQeXRob24gYW5kIFdpbmRvd3MgUHl0aG9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk4MjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZXJ2ZXJQcm9jZXNzIHNob3VsZCBzdG9yZSBpdHMg
V2luZG93cyBQSUQgZm9yIEN5Z3dpbiBiZWZvcmUKKyAgICAgICAgcHJvY2VzcyBjcmFzaGluZyBi
ZWNhdXNlIHRoZSBXaW5kb3dzIFBJRCBpcyByZXF1aXJlZCB0byBnZXQgYQorICAgICAgICBjb3Jy
ZWN0IENyYXNoTG9nLgorCisgICAgICAgIENyYXNoTG9nIGZvcm1hdCBoYXMgYmVlbiBjaGFuZ2Vk
LiBDcmFzaExvZ3MuR0xPQkFMX1BJRF9SRUdFWAorICAgICAgICBzaG91bGQgYWNjZXB0IHRoZSBu
ZXcgZm9ybWF0LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2Ny
YXNobG9ncy5weToKKyAgICAgICAgKENyYXNoTG9ncy5HTE9CQUxfUElEX1JFR0VYKTogQWNjZXB0
IGFueSB3b3JkcyBiZXR3ZWVuICdHbG9iYWwnIGFuZCAnUElEOicuCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L3BvcnQvZHJpdmVyLnB5OgorICAgICAgICAoRHJpdmVyLmhhc19jcmFzaGVk
KToKKyAgICAgICAgKERyaXZlci5fY2hlY2tfZm9yX2RyaXZlcl9jcmFzaF9vcl91bnJlc3BvbnNp
dmVuZXNzKToKKyAgICAgICAgKERyaXZlci5fcmVhZF9ibG9jayk6CisgICAgICAgIFN0b3JlIHNl
cnZlcl9wcm9jZXNzLnN5c3RlbV9waWQoKSB0byBzZWxmLl9jcmFzaGVkX3BpZCBpbnN0ZWFkIG9m
IHNlcnZlcl9wcm9jZXNzLnBpZCgpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0
L3NlcnZlcl9wcm9jZXNzLnB5OgorICAgICAgICAoU2VydmVyUHJvY2Vzcy5fX2luaXRfXyk6Cisg
ICAgICAgIChTZXJ2ZXJQcm9jZXNzLnN5c3RlbV9waWQpOiBBZGRlZC4KKyAgICAgICAgKFNlcnZl
clByb2Nlc3MuX2ZpbmRfc3lzdGVtX3BpZCk6IEFkZGVkLgorICAgICAgICAoU2VydmVyUHJvY2Vz
cy5fc3RhcnQpOiBTZXQgc2VsZi5fc3lzdGVtX3BpZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3BvcnQvd2luLnB5OgorICAgICAgICAoV2luUG9ydC5fZ2V0X2NyYXNoX2xvZyk6IFJlbW92
ZWQgYnJva2VuIG9sZCBjb2RlIGNvbnZlcnRpbmcgQ3lnd2luIHBpZCB0byBXaW5kb3dzIHBpZC4K
KwogMjAxOS0wNS0xOSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAg
Q2hhbmdlIFN0cmluZzo6bnVtYmVyIHRvIHVzZSAic2hvcnRlc3QiIGluc3RlYWQgb2YgImZpeGVk
IHByZWNpc2lvbiA2IGRpZ2l0cyIKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
Y29tbW9uL3N5c3RlbS9jcmFzaGxvZ3MucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1v
bi9zeXN0ZW0vY3Jhc2hsb2dzLnB5CmluZGV4IDhlNWZlMTY0YzlhZWI2ZjQ4OGU5YjU1OWQ3NThj
MjFiZjdlNjg3ZDUuLjY5NTIyNWYwZGE3Y2E4NWVhYjdmYWFmNDhjNzEyYWQyYTBkNWRhNjMgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9jcmFzaGxvZ3Mu
cHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2NyYXNobG9ncy5w
eQpAQCAtMzcsNyArMzcsOCBAQCBfbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18pCiAK
IGNsYXNzIENyYXNoTG9ncyhvYmplY3QpOgogCi0gICAgR0xPQkFMX1BJRF9SRUdFWCA9IHJlLmNv
bXBpbGUocidccytHbG9iYWxccytQSUQ6XHMrXFsoP1A8cGlkPlxkKylcXScpCisgICAgIyBNYXRj
aGVzIGEgc3RyaW5nIGxpa2UgJyAgICBHbG9iYWwgICAgRDEgICAgUElEOiBbMTQ1MTZdJworICAg
IEdMT0JBTF9QSURfUkVHRVggPSByZS5jb21waWxlKHInXHMrR2xvYmFsXGIuK1xiUElEOlxzK1xb
KD9QPHBpZD5cZCspXF0nKQogICAgIEVYSVRfUFJPQ0VTU19QSURfUkVHRVggPSByZS5jb21waWxl
KHInRXhpdCBwcm9jZXNzIFxkKzooP1A8cGlkPlx3KyksIGNvZGUnKQogICAgIERBUldJTl9QUk9D
RVNTX1JFR0VYID0gcmUuY29tcGlsZShyJ15Qcm9jZXNzOlxzKyg/UDxwcm9jZXNzX25hbWU+Liop
IFxbKD9QPHBpZD5cZCspXF0kJykKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9wb3J0L2RyaXZlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXIucHkK
aW5kZXggNjQyZDY4NGQ5ZDBmMmQyNjJlMDlhNDliNTdhYzQ1NzZjMTY5ZTE1ZS4uYjk5NmNiNWZk
NTNiZDVjNzM0MDIwMjc5ODA0M2RlNjUwZDIwMzllYyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9wb3J0L2RyaXZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Bv
cnQvZHJpdmVyLnB5CkBAIC0zODcsNyArMzg3LDcgQEAgY2xhc3MgRHJpdmVyKG9iamVjdCk6CiAg
ICAgICAgICAgICByZXR1cm4gVHJ1ZQogICAgICAgICBpZiBzZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5o
YXNfY3Jhc2hlZCgpOgogICAgICAgICAgICAgc2VsZi5fY3Jhc2hlZF9wcm9jZXNzX25hbWUgPSBz
ZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5wcm9jZXNzX25hbWUoKQotICAgICAgICAgICAgc2VsZi5fY3Jh
c2hlZF9waWQgPSBzZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5waWQoKQorICAgICAgICAgICAgc2VsZi5f
Y3Jhc2hlZF9waWQgPSBzZWxmLl9zZXJ2ZXJfcHJvY2Vzcy5zeXN0ZW1fcGlkKCkKICAgICAgICAg
ICAgIHJldHVybiBUcnVlCiAgICAgICAgIHJldHVybiBGYWxzZQogCkBAIC01MzUsNyArNTM1LDcg
QEAgY2xhc3MgRHJpdmVyKG9iamVjdCk6CiAgICAgICAgIGNyYXNoZWRfY2hlY2sgPSBlcnJvcl9s
aW5lLnJzdHJpcCgnXHJcbicpCiAgICAgICAgIGlmIGNyYXNoZWRfY2hlY2sgPT0gIiNDUkFTSEVE
IjoKICAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcHJvY2Vzc19uYW1lID0gc2VsZi5fc2VydmVy
X3Byb2Nlc3MucHJvY2Vzc19uYW1lKCkKLSAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcGlkID0g
c2VsZi5fc2VydmVyX3Byb2Nlc3MucGlkKCkKKyAgICAgICAgICAgIHNlbGYuX2NyYXNoZWRfcGlk
ID0gc2VsZi5fc2VydmVyX3Byb2Nlc3Muc3lzdGVtX3BpZCgpCiAgICAgICAgICAgICByZXR1cm4g
VHJ1ZQogICAgICAgICBlbGlmIGVycm9yX2xpbmUuc3RhcnRzd2l0aCgiI0NSQVNIRUQgLSAiKToK
ICAgICAgICAgICAgIG1hdGNoID0gcmUubWF0Y2goJyNDUkFTSEVEIC0gKFxTKyknLCBlcnJvcl9s
aW5lKQpAQCAtNjkzLDcgKzY5Myw3IEBAIGNsYXNzIERyaXZlcihvYmplY3QpOgogCiAgICAgICAg
IGlmIGFzYW5fdmlvbGF0aW9uX2RldGVjdGVkIGFuZCBub3Qgc2VsZi5fY3Jhc2hlZF9wcm9jZXNz
X25hbWU6CiAgICAgICAgICAgICBzZWxmLl9jcmFzaGVkX3Byb2Nlc3NfbmFtZSA9IHNlbGYuX3Nl
cnZlcl9wcm9jZXNzLnByb2Nlc3NfbmFtZSgpCi0gICAgICAgICAgICBzZWxmLl9jcmFzaGVkX3Bp
ZCA9IHNlbGYuX3NlcnZlcl9wcm9jZXNzLnBpZCgpCisgICAgICAgICAgICBzZWxmLl9jcmFzaGVk
X3BpZCA9IHNlbGYuX3NlcnZlcl9wcm9jZXNzLnN5c3RlbV9waWQoKQogCiAgICAgICAgIGJsb2Nr
LmRlY29kZV9jb250ZW50KCkKICAgICAgICAgcmV0dXJuIGJsb2NrCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvZHJpdmVyX3VuaXR0ZXN0LnB5IGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9wb3J0L2RyaXZlcl91bml0dGVzdC5weQppbmRleCBlNTFkMmEzODc5NDRjMDg1
YzA1ZjBhOGI4OGIwMjVmYTZiMmZmMWU2Li4zMzM4OTQxNmU0MDJhNzBlZjU0M2Y1NDQwYzRmNTRh
YzlhYmEyYThjIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvZHJpdmVy
X3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9kcml2ZXJfdW5p
dHRlc3QucHkKQEAgLTIyNCw2ICsyMjQsOSBAQCBjbGFzcyBEcml2ZXJUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKToKICAgICAgICAgICAgIGRlZiBwaWQoc2VsZik6CiAgICAgICAgICAgICAgICAgcmV0
dXJuIDEyMzQKIAorICAgICAgICAgICAgZGVmIHN5c3RlbV9waWQoc2VsZik6CisgICAgICAgICAg
ICAgICAgcmV0dXJuIHNlbGYucGlkKCkKKwogICAgICAgICAgICAgZGVmIHByb2Nlc3NfbmFtZShz
ZWxmKToKICAgICAgICAgICAgICAgICByZXR1cm4gJ0Zha2VTZXJ2ZXJQcm9jZXNzJwogCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvc2VydmVyX3Byb2Nlc3MucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKaW5kZXggNjVmNDdh
NzdhZGE3NWI0ZWRlYzIyOGU2MzhjOGI4YzZlOTkzZGNlZi4uNDUyZGUxYWFmNmY2ZGRhMWE2NGZm
M2VlZDk3M2U1MGE4ZTAzYThiNiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9w
b3J0L3NlcnZlcl9wcm9jZXNzLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9z
ZXJ2ZXJfcHJvY2Vzcy5weQpAQCAtNzcsNiArNzcsNyBAQCBjbGFzcyBTZXJ2ZXJQcm9jZXNzKG9i
amVjdCk6CiAgICAgICAgIHNlbGYuX3RyZWF0X25vX2RhdGFfYXNfY3Jhc2ggPSB0cmVhdF9ub19k
YXRhX2FzX2NyYXNoCiAgICAgICAgIHNlbGYuX3RhcmdldF9ob3N0ID0gdGFyZ2V0X2hvc3Qgb3Ig
cG9ydF9vYmouaG9zdAogICAgICAgICBzZWxmLl9waWQgPSBOb25lCisgICAgICAgIHNlbGYuX3N5
c3RlbV9waWQgPSBOb25lCiAgICAgICAgIHNlbGYuX2NoaWxkX3Byb2Nlc3NlcyA9IHt9CiAgICAg
ICAgIHNlbGYuX3Jlc2V0KCkKIApAQCAtOTMsNiArOTQsOSBAQCBjbGFzcyBTZXJ2ZXJQcm9jZXNz
KG9iamVjdCk6CiAgICAgZGVmIHBpZChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuX3BpZAog
CisgICAgZGVmIHN5c3RlbV9waWQoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9zeXN0ZW1f
cGlkCisKICAgICBkZWYgX3Jlc2V0KHNlbGYpOgogICAgICAgICBpZiBnZXRhdHRyKHNlbGYsICdf
cHJvYycsIE5vbmUpOgogICAgICAgICAgICAgaWYgc2VsZi5fcHJvYy5zdGRpbjoKQEAgLTEzMCw2
ICsxMzQsNyBAQCBjbGFzcyBTZXJ2ZXJQcm9jZXNzKG9iamVjdCk6CiAgICAgICAgICAgICBlbnY9
c2VsZi5fZW52LAogICAgICAgICAgICAgdW5pdmVyc2FsX25ld2xpbmVzPXNlbGYuX3VuaXZlcnNh
bF9uZXdsaW5lcykKICAgICAgICAgc2VsZi5fcGlkID0gc2VsZi5fcHJvYy5waWQKKyAgICAgICAg
c2VsZi5fc3lzdGVtX3BpZCA9IGludChzZWxmLl9wb3J0Ll9maWxlc3lzdGVtLnJlYWRfdGV4dF9m
aWxlKCcvcHJvYy8lZC93aW5waWQnICUgc2VsZi5fcGlkKSkgaWYgc2VsZi5fcG9ydC5ob3N0LnBs
YXRmb3JtLmlzX2N5Z3dpbigpIGVsc2Ugc2VsZi5fcGlkCiAgICAgICAgIHNlbGYuX2NoaWxkX3By
b2Nlc3NlcyA9IHt9CiAgICAgICAgIGlmIG5vdCBzZWxmLl91c2Vfd2luMzJfYXBpczoKICAgICAg
ICAgICAgIHNlbGYuX3NldF9maWxlX25vbmJsb2NraW5nKHNlbGYuX3Byb2Muc3Rkb3V0KQpkaWZm
IC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L3dpbi5weSBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvcG9ydC93aW4ucHkKaW5kZXggOGRiNzM2ZjA5MTFjYjBmZWI4MmVjNmVhNTc4
MzNmODM4NzFlNmYwOC4uNjZhZDEzZGIzY2E2OGM2YmU3ZWI5MGVhMWU0ZDg3NGNlZDc4YjAwOSAx
MDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L3dpbi5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvd2luLnB5CkBAIC00MjUsMTEgKzQyNSw3IEBAIGNsYXNz
IFdpblBvcnQoQXBwbGVQb3J0KToKICAgICAgICAgX2xvZy5kZWJ1ZygnbG9va2luZyBmb3IgY3Jh
c2ggbG9nIGZvciAlczolcycgJSAobmFtZSwgc3RyKHBpZCkpKQogICAgICAgICBkZWFkbGluZSA9
IG5vdyArIDUgKiBpbnQoc2VsZi5nZXRfb3B0aW9uKCdjaGlsZF9wcm9jZXNzZXMnLCAxKSkKICAg
ICAgICAgd2hpbGUgbm90IGNyYXNoX2xvZyBhbmQgbm93IDw9IGRlYWRsaW5lOgotICAgICAgICAg
ICAgIyBJZiB0aGUgc3lzdGVtX3BpZCBoYXNuJ3QgYmVlbiBkZXRlcm1pbmVkIHlldCwganVzdCB0
cnkgd2l0aCB0aGUgcGFzc2VkIGluIHBpZC4gIFdlJ2xsIGJlIGNoZWNraW5nIGFnYWluIGxhdGVy
Ci0gICAgICAgICAgICBzeXN0ZW1fcGlkID0gc2VsZi5fZXhlY3V0aXZlLnBpZF90b19zeXN0ZW1f
cGlkLmdldChwaWQpCi0gICAgICAgICAgICBpZiBzeXN0ZW1fcGlkID09IE5vbmU6Ci0gICAgICAg
ICAgICAgICAgYnJlYWsgICMgV2UgaGF2ZW4ndCBtYXBwZWQgY3lnd2luIHBpZC0+d2luIHBpZCB5
ZXQKLSAgICAgICAgICAgIGNyYXNoX2xvZyA9IGNyYXNoX2xvZ3MuZmluZF9uZXdlc3RfbG9nKG5h
bWUsIHN5c3RlbV9waWQsIGluY2x1ZGVfZXJyb3JzPVRydWUsIG5ld2VyX3RoYW49bmV3ZXJfdGhh
bikKKyAgICAgICAgICAgIGNyYXNoX2xvZyA9IGNyYXNoX2xvZ3MuZmluZF9uZXdlc3RfbG9nKG5h
bWUsIHBpZCwgaW5jbHVkZV9lcnJvcnM9VHJ1ZSwgbmV3ZXJfdGhhbj1uZXdlcl90aGFuKQogICAg
ICAgICAgICAgaWYgbm90IHdhaXRfZm9yX2xvZzoKICAgICAgICAgICAgICAgICBicmVhawogICAg
ICAgICAgICAgaWYgbm90IGNyYXNoX2xvZyBvciBub3QgW2xpbmUgZm9yIGxpbmUgaW4gY3Jhc2hf
bG9nLnNwbGl0bGluZXMoKSBpZiBsaW5lLnN0YXJ0c3dpdGgoJ3F1aXQ6JyldOgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>