<?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>188712</bug_id>
          
          <creation_ts>2018-08-17 17:09:22 -0700</creation_ts>
          <short_desc>Fix python dependency issue for launch time benchmark</short_desc>
          <delta_ts>2018-08-21 15:26:12 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ben Richards">benton_richards</reporter>
          <assigned_to name="Ben Richards">benton_richards</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1451288</commentid>
    <comment_count>0</comment_count>
    <who name="Ben Richards">benton_richards</who>
    <bug_when>2018-08-17 17:09:22 -0700</bug_when>
    <thetext>Fix python dependency issue for launch time benchmark</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451292</commentid>
    <comment_count>1</comment_count>
      <attachid>347416</attachid>
    <who name="Ben Richards">benton_richards</who>
    <bug_when>2018-08-17 17:12:02 -0700</bug_when>
    <thetext>Created attachment 347416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1451318</commentid>
    <comment_count>2</comment_count>
      <attachid>347416</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-08-17 18:48:28 -0700</bug_when>
    <thetext>Comment on attachment 347416
Patch

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

How did you come to the decision to use pip(1)? Is there a reason we cannot make use of the existing autoinstall logic in webkitpy? The apporach tak

&gt; PerformanceTests/ChangeLog:9
&gt; +        Got rid of autoinstaller for installing tornado package in favor of installing
&gt; +        to the autoinstalled directory using pip.

Why? What is the issue that you are running into?

&gt; PerformanceTests/LaunchTime/thirdparty/__init__.py:-22
&gt; -# Copyright (C) 2010 Chris Jerdonek (cjerdonek@webkit.org)
&gt; -# Copyright (C) 2018 Apple Inc. All rights reserved.
&gt; -#
&gt; -# Redistribution and use in source and binary forms, with or without
&gt; -# modification, are permitted provided that the following conditions
&gt; -# are met:
&gt; -# 1.  Redistributions of source code must retain the above copyright
&gt; -#     notice, this list of conditions and the following disclaimer.
&gt; -# 2.  Redistributions in binary form must reproduce the above copyright
&gt; -#     notice, this list of conditions and the following disclaimer in the
&gt; -#     documentation and/or other materials provided with the distribution.
&gt; -#
&gt; -# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS&apos;&apos; AND
&gt; -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
&gt; -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
&gt; -# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
&gt; -# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
&gt; -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
&gt; -# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
&gt; -# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
&gt; -# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
&gt; -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Why are we removing the license block given that this file is non-empty?

&gt; PerformanceTests/LaunchTime/thirdparty/__init__.py:33
&gt; +    if not os.path.isdir(os.path.join(_SITE_PACKAGES_DIR, &apos;tornado&apos;)):
&gt; +        subprocess.check_output([&apos;pip&apos;, &apos;install&apos;, &apos;--install-option&apos;, &apos;--prefix={}&apos;.format(_AUTOINSTALLED_DIR), &apos;tornado&apos;])

r-; pip(1) is not part of a default installation on macOS.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347416</attachid>
            <date>2018-08-17 17:12:02 -0700</date>
            <delta_ts>2018-08-17 18:48:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188712-20180817171202.patch</filename>
            <type>text/plain</type>
            <size>8639</size>
            <attacher name="Ben Richards">benton_richards</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0OTk0CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNjYjdiNmJiYzJk
MTFjODQwYzFjNDMyOTNlOTZjNzgyYjNmYjA1NDcuLmIwMDZmMGY2MTQyMjhmMGFlMzBiZmQzYjY5
YTIwYTlhMzFlNjRhMTkgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTgtMDgt
MTcgIEJlbiBSaWNoYXJkcyAgPGJlbnRvbl9yaWNoYXJkc0BhcHBsZS5jb20+CisKKyAgICAgICAg
Rml4IHB5dGhvbiBkZXBlbmRlbmN5IGlzc3VlIGZvciBsYXVuY2ggdGltZSBiZW5jaG1hcmsKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODcxMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEdvdCByaWQgb2Yg
YXV0b2luc3RhbGxlciBmb3IgaW5zdGFsbGluZyB0b3JuYWRvIHBhY2thZ2UgaW4gZmF2b3Igb2Yg
aW5zdGFsbGluZworICAgICAgICB0byB0aGUgYXV0b2luc3RhbGxlZCBkaXJlY3RvcnkgdXNpbmcg
cGlwLgorCisgICAgICAgICogTGF1bmNoVGltZS9mZWVkYmFja19zZXJ2ZXIucHk6CisgICAgICAg
ICogTGF1bmNoVGltZS90aGlyZHBhcnR5L19faW5pdF9fLnB5OgorICAgICAgICAoYXV0b2luc3Rh
bGxfZXZlcnl0aGluZyk6CisgICAgICAgIChBdXRvaW5zdGFsbEltcG9ydEhvb2spOiBEZWxldGVk
LgorICAgICAgICAoQXV0b2luc3RhbGxJbXBvcnRIb29rLl9faW5pdF9fKTogRGVsZXRlZC4KKyAg
ICAgICAgKEF1dG9pbnN0YWxsSW1wb3J0SG9vay5fZW5zdXJlX2F1dG9pbnN0YWxsZWRfZGlyX2lz
X2luX3N5c19wYXRoKTogRGVsZXRlZC4KKyAgICAgICAgKEF1dG9pbnN0YWxsSW1wb3J0SG9vay5m
aW5kX21vZHVsZSk6IERlbGV0ZWQuCisgICAgICAgIChBdXRvaW5zdGFsbEltcG9ydEhvb2suX2lu
c3RhbGxfdG9ybmFkbyk6IERlbGV0ZWQuCisgICAgICAgIChBdXRvaW5zdGFsbEltcG9ydEhvb2su
Z3JlYXRlcl90aGFuX2VxdWFsX3RvX3ZlcnNpb24pOiBEZWxldGVkLgorICAgICAgICAoQXV0b2lu
c3RhbGxJbXBvcnRIb29rLl9pbnN0YWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEF1dG9pbnN0YWxs
SW1wb3J0SG9vay5nZXRfbGF0ZXN0X3B5cGlfdXJsKTogRGVsZXRlZC4KKyAgICAgICAgKEF1dG9p
bnN0YWxsSW1wb3J0SG9vay5pbnN0YWxsX2JpbmFyeSk6IERlbGV0ZWQuCisgICAgICAgIChnZXRf
b3NfaW5mbyk6IERlbGV0ZWQuCisKIDIwMTgtMDgtMTMgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUu
Y29tPgogCiAgICAgICAgIFVwZGF0ZSBNb3Rpb25NYXJrIHZlcnNpb24gbnVtYmVyCmRpZmYgLS1n
aXQgYS9QZXJmb3JtYW5jZVRlc3RzL0xhdW5jaFRpbWUvZmVlZGJhY2tfc2VydmVyLnB5IGIvUGVy
Zm9ybWFuY2VUZXN0cy9MYXVuY2hUaW1lL2ZlZWRiYWNrX3NlcnZlci5weQppbmRleCAxOTNhNWNm
MDY4NTJmM2YyZTczZTcxODBiN2QwOGQ2YTllNTVlMGY5Li5jNWQxNjNkZmRjZjRhMzE4N2I1NzY2
NzE1ZGE5ODQ4N2QzNTk5NzBjIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0xhdW5jaFRp
bWUvZmVlZGJhY2tfc2VydmVyLnB5CisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvTGF1bmNoVGltZS9m
ZWVkYmFja19zZXJ2ZXIucHkKQEAgLTQsOSArNCwxMSBAQCBpbXBvcnQgb3MKIGltcG9ydCBzb2Nr
ZXQKIGltcG9ydCB0aHJlYWRpbmcKIGltcG9ydCB0aW1lCitpbXBvcnQgdGhpcmRwYXJ0eQogCiAj
IFRoaXMgbGluZSBtYWtlcyBzdXJlIHRoYXQgdG9ybmFkbyBpcyBpbnN0YWxsZWQgYW5kIGluIHN5
cy5wYXRoCi1pbXBvcnQgdGhpcmRwYXJ0eS5hdXRvaW5zdGFsbGVkLnRvcm5hZG8KK3RoaXJkcGFy
dHkuYXV0b2luc3RhbGxfZXZlcnl0aGluZygpCisKIGltcG9ydCB0b3JuYWRvLmlvbG9vcAogaW1w
b3J0IHRvcm5hZG8ud2ViCiBpbXBvcnQgdG9ybmFkby53ZWJzb2NrZXQKZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvTGF1bmNoVGltZS90aGlyZHBhcnR5L19faW5pdF9fLnB5IGIvUGVyZm9y
bWFuY2VUZXN0cy9MYXVuY2hUaW1lL3RoaXJkcGFydHkvX19pbml0X18ucHkKaW5kZXggZDE5ZWIy
ZDhmMmM1OTczNmI3MjU5MWUyNTJjZWMxZjQzYjAzY2UyYi4uZTQxZWRhZDgyYTZmNDkxZGNhODM0
MTIwOWIxYWM3MDc3NWRlM2FmNCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9MYXVuY2hU
aW1lL3RoaXJkcGFydHkvX19pbml0X18ucHkKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9MYXVuY2hU
aW1lL3RoaXJkcGFydHkvX19pbml0X18ucHkKQEAgLTEsNjMgKzEsMTggQEAKLSMgQ29weXJpZ2h0
IChDKSAyMDEwIENocmlzIEplcmRvbmVrIChjamVyZG9uZWtAd2Via2l0Lm9yZykKLSMgQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0jIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotIyBhcmUgbWV0OgotIyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSMg
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0jICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0jICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotIwotIyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORAotIyBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotIyBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
Ci0jIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SCi0jIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSMgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IKLSMgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKLSMgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSMgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKLSMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotIyBUaGlzIG1vZHVsZSBpcyByZXF1aXJl
ZCBmb3IgUHl0aG9uIHRvIHRyZWF0IHRoaXMgZGlyZWN0b3J5IGFzIGEgcGFja2FnZS4KLQotIiIi
QXV0b2luc3RhbGxzIHRoaXJkLXBhcnR5IGNvZGUgcmVxdWlyZWQgYnkgV2ViS2l0LiIiIgotCi0K
LWltcG9ydCBjb2RlY3MKLWltcG9ydCBqc29uCiBpbXBvcnQgb3MKLWltcG9ydCByZQogaW1wb3J0
IHN5cwotaW1wb3J0IHVybGxpYjIKIGltcG9ydCBpbXAKK2ltcG9ydCBzdWJwcm9jZXNzCiAKIGZy
b20gY29sbGVjdGlvbnMgaW1wb3J0IG5hbWVkdHVwbGUKIGZyb20gZGlzdHV0aWxzIGltcG9ydCBz
cGF3bgogCiB3ZWJraXRweV9wYXRoID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2Zp
bGVfXyksICcuLi8uLi8uLi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5JykKLWF1dG9pbnN0YWxsX3Bh
dGggPSBvcy5wYXRoLmpvaW4od2Via2l0cHlfcGF0aCwgJ2NvbW1vbi9zeXN0ZW0vYXV0b2luc3Rh
bGwucHknKQogZmlsZXN5c3RlbV9wYXRoID0gb3MucGF0aC5qb2luKHdlYmtpdHB5X3BhdGgsICdj
b21tb24vc3lzdGVtL2ZpbGVzeXN0ZW0ucHknKQotCi1BdXRvSW5zdGFsbGVyID0gaW1wLmxvYWRf
c291cmNlKCdhdXRvaW5zdGFsbCcsIGF1dG9pbnN0YWxsX3BhdGgpLkF1dG9JbnN0YWxsZXIKIEZp
bGVTeXN0ZW0gPSBpbXAubG9hZF9zb3VyY2UoJ2ZpbGVzeXN0ZW0nLCBmaWxlc3lzdGVtX3BhdGgp
LkZpbGVTeXN0ZW0KIAogX1RISVJEUEFSVFlfRElSID0gb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9f
KQogX0FVVE9JTlNUQUxMRURfRElSID0gb3MucGF0aC5qb2luKF9USElSRFBBUlRZX0RJUiwgImF1
dG9pbnN0YWxsZWQiKQotCi0jIFB1dHRpbmcgdGhlIGF1dG9pbnN0YWxsIGNvZGUgaW50byBMYXVu
Y2hUaW1lL3RoaXJkcGFydHkvX19pbml0X18ucHkKLSMgZW5zdXJlcyB0aGF0IG5vIGF1dG9pbnN0
YWxsaW5nIG9jY3VycyB1bnRpbCBhIGNhbGxlciBpbXBvcnRzIGZyb20KLSMgd2Via2l0cHkudGhp
cmRwYXJ0eS4gIFRoaXMgaXMgdXNlZnVsIGlmIHRoZSBjYWxsZXIgd2FudHMgdG8gY29uZmlndXJl
Ci0jIGxvZ2dpbmcgcHJpb3IgdG8gZXhlY3V0aW5nIGF1dG9pbnN0YWxsIGNvZGUuCi0KLSMgRklY
TUU6IElmIGFueSBvZiB0aGVzZSBzZXJ2ZXJzIGlzIG9mZmxpbmUsIHdlYmtpdC1wYXRjaCBicmVh
a3MgKGFuZCBtYXliZQotIyBvdGhlciBzY3JpcHRzIGRvLCB0b28pLiBTZWUgPGh0dHA6Ly93ZWJr
aXQub3JnL2IvNDIwODA+LgotCi0jIFdlIHB1dCBhdXRvLWluc3RhbGxlZCB0aGlyZC1wYXJ0eSBt
b2R1bGVzIGluIHRoaXMgZGlyZWN0b3J5LS0KLSMKLSMgICAgIExhdW5jaFRpbWUvdGhpcmRwYXJ0
eS9hdXRvaW5zdGFsbGVkCitfU0lURV9QQUNLQUdFU19ESVIgPSBvcy5wYXRoLmpvaW4oX0FVVE9J
TlNUQUxMRURfRElSLCAnbGliL3B5dGhvbnt9Lnt9L3NpdGUtcGFja2FnZXMnLmZvcm1hdChzeXMu
dmVyc2lvbl9pbmZvWzBdLCBzeXMudmVyc2lvbl9pbmZvWzFdKSkKIAogZnMgPSBGaWxlU3lzdGVt
KCkKIGZzLm1heWJlX21ha2VfZGlyZWN0b3J5KF9BVVRPSU5TVEFMTEVEX0RJUikKQEAgLTczLDcx
ICsyOCw4IEBAIGlmIG5vdCBmcy5leGlzdHMocmVhZG1lX3BhdGgpOgogICAgICAgICAic2FmZSB0
byBkZWxldGUuXG5JdCBjb250YWlucyBuZWVkZWQgdGhpcmQtcGFydHkgUHl0aG9uICIKICAgICAg
ICAgInBhY2thZ2VzIGF1dG9tYXRpY2FsbHkgZG93bmxvYWRlZCBmcm9tIHRoZSB3ZWIuIikKIAot
Ci1jbGFzcyBBdXRvaW5zdGFsbEltcG9ydEhvb2sob2JqZWN0KToKLSAgICBkZWYgX19pbml0X18o
c2VsZiwgZmlsZXN5c3RlbT1Ob25lKToKLSAgICAgICAgc2VsZi5fZnMgPSBmaWxlc3lzdGVtIG9y
IEZpbGVTeXN0ZW0oKQotCi0gICAgZGVmIF9lbnN1cmVfYXV0b2luc3RhbGxlZF9kaXJfaXNfaW5f
c3lzX3BhdGgoc2VsZik6Ci0gICAgICAgICMgU29tZSBwYWNrYWdlcyByZXF1aXJlIHRoYXQgdGhl
IGFyZSBiZWluZyBwdXQgc29tZXdoZXJlIHVuZGVyIGEgZGlyZWN0b3J5IGluIHN5cy5wYXRoLgot
ICAgICAgICBpZiBub3QgX0FVVE9JTlNUQUxMRURfRElSIGluIHN5cy5wYXRoOgotICAgICAgICAg
ICAgc3lzLnBhdGguaW5zZXJ0KDAsIF9BVVRPSU5TVEFMTEVEX0RJUikKLQotICAgIGRlZiBmaW5k
X21vZHVsZShzZWxmLCBmdWxsbmFtZSwgXyk6Ci0gICAgICAgICMgVGhpcyBtZXRob2Qgd2lsbCBy
dW4gYmVmb3JlIGVhY2ggaW1wb3J0LiBTZWUgaHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBz
L3BlcC0wMzAyLwotICAgICAgICBpZiAnLmF1dG9pbnN0YWxsZWQnIG5vdCBpbiBmdWxsbmFtZToK
LSAgICAgICAgICAgIHJldHVybgotCi0gICAgICAgICMgTm90ZTogYWxsIG9mIHRoZSBtZXRob2Rz
IG11c3QgZm9sbG93IHRoZSAiX2luc3RhbGxfWFhYIiBjb252ZW50aW9uIGluCi0gICAgICAgICMg
b3JkZXIgZm9yIGF1dG9pbnN0YWxsX2V2ZXJ5dGhpbmcoKSwgYmVsb3csIHRvIHdvcmsgcHJvcGVy
bHkuCi0gICAgICAgIGlmICcudG9ybmFkbycgaW4gZnVsbG5hbWU6Ci0gICAgICAgICAgICBzZWxm
Ll9pbnN0YWxsX3Rvcm5hZG8oKQotCi0gICAgZGVmIF9pbnN0YWxsX3Rvcm5hZG8oc2VsZik6Ci0g
ICAgICAgIHNlbGYuX2Vuc3VyZV9hdXRvaW5zdGFsbGVkX2Rpcl9pc19pbl9zeXNfcGF0aCgpCi0g
ICAgICAgIHNlbGYuX2luc3RhbGwoImh0dHBzOi8vZmlsZXMucHl0aG9uaG9zdGVkLm9yZy9wYWNr
YWdlcy80NS9lYy9mMmEwM2EwNTA5YmNmY2EzMzZiZWYyM2EzZGFiMGQwNzUwNDg5M2FmMzRmZDEz
MDY0MDU5YmE0YTA1MDMvdG9ybmFkby01LjEudGFyLmd6IiwKLSAgICAgICAgICAgICJ0b3JuYWRv
LTUuMS90b3JuYWRvIikKLQotICAgIEBzdGF0aWNtZXRob2QKLSAgICBkZWYgZ3JlYXRlcl90aGFu
X2VxdWFsX3RvX3ZlcnNpb24obWluaW11bSwgdmVyc2lvbik6Ci0gICAgICAgIGZvciBpIGluIHhy
YW5nZShsZW4obWluaW11bS5zcGxpdCgnLicpKSk6Ci0gICAgICAgICAgICBpZiBpbnQodmVyc2lv
bi5zcGxpdCgnLicpW2ldKSA+IGludChtaW5pbXVtLnNwbGl0KCcuJylbaV0pOgotICAgICAgICAg
ICAgICAgIHJldHVybiBUcnVlCi0gICAgICAgICAgICBpZiBpbnQodmVyc2lvbi5zcGxpdCgnLicp
W2ldKSA8IGludChtaW5pbXVtLnNwbGl0KCcuJylbaV0pOgotICAgICAgICAgICAgICAgIHJldHVy
biBGYWxzZQotICAgICAgICByZXR1cm4gVHJ1ZQotCi0gICAgZGVmIF9pbnN0YWxsKHNlbGYsIHVy
bCwgdXJsX3N1YnBhdGg9Tm9uZSwgdGFyZ2V0X25hbWU9Tm9uZSk6Ci0gICAgICAgIGluc3RhbGxl
ciA9IEF1dG9JbnN0YWxsZXIodGFyZ2V0X2Rpcj1fQVVUT0lOU1RBTExFRF9ESVIpCi0gICAgICAg
IGluc3RhbGxlci5pbnN0YWxsKHVybD11cmwsIHVybF9zdWJwYXRoPXVybF9zdWJwYXRoLCB0YXJn
ZXRfbmFtZT10YXJnZXRfbmFtZSkKLQotICAgIGRlZiBnZXRfbGF0ZXN0X3B5cGlfdXJsKHNlbGYs
IHBhY2thZ2VfbmFtZSwgdXJsX3N1YnBhdGhfZm9ybWF0PSd7bmFtZX0te3ZlcnNpb259L3tsbmFt
ZX0nKToKLSAgICAgICAganNvbl91cmwgPSAiaHR0cHM6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS8l
cy9qc29uIiAlIHBhY2thZ2VfbmFtZQotICAgICAgICByZXNwb25zZSA9IHVybGxpYjIudXJsb3Bl
bihqc29uX3VybCkKLSAgICAgICAgZGF0YSA9IGpzb24ubG9hZChyZXNwb25zZSkKLSAgICAgICAg
dXJsID0gZGF0YVsndXJscyddWzFdWyd1cmwnXQotICAgICAgICBzdWJwYXRoID0gdXJsX3N1YnBh
dGhfZm9ybWF0LmZvcm1hdChuYW1lPXBhY2thZ2VfbmFtZSwgdmVyc2lvbj1kYXRhWydpbmZvJ11b
J3ZlcnNpb24nXSwgbG5hbWU9cGFja2FnZV9uYW1lLmxvd2VyKCkpCi0gICAgICAgIHJldHVybiAo
dXJsLCBzdWJwYXRoKQotCi0gICAgZGVmIGluc3RhbGxfYmluYXJ5KHNlbGYsIHVybCwgbmFtZSk6
Ci0gICAgICAgIHNlbGYuX2luc3RhbGwodXJsPXVybCwgdGFyZ2V0X25hbWU9bmFtZSkKLSAgICAg
ICAgZGlyZWN0b3J5ID0gb3MucGF0aC5qb2luKF9BVVRPSU5TVEFMTEVEX0RJUiwgbmFtZSkKLSAg
ICAgICAgb3MuY2htb2Qob3MucGF0aC5qb2luKGRpcmVjdG9yeSwgbmFtZSksIDA3NTUpCi0gICAg
ICAgIG9wZW4ob3MucGF0aC5qb2luKGRpcmVjdG9yeSwgJ19faW5pdF9fLnB5JyksICd3KycpLmNs
b3NlKCkKLQotCi1faG9vayA9IEF1dG9pbnN0YWxsSW1wb3J0SG9vaygpCi1zeXMubWV0YV9wYXRo
LmFwcGVuZChfaG9vaykKLQotCiBkZWYgYXV0b2luc3RhbGxfZXZlcnl0aGluZygpOgotICAgIGlu
c3RhbGxfbWV0aG9kcyA9IFttZXRob2QgZm9yIG1ldGhvZCBpbiBkaXIoX2hvb2suX19jbGFzc19f
KSBpZiBtZXRob2Quc3RhcnRzd2l0aCgnX2luc3RhbGxfJyldCi0gICAgZm9yIG1ldGhvZCBpbiBp
bnN0YWxsX21ldGhvZHM6Ci0gICAgICAgIGdldGF0dHIoX2hvb2ssIG1ldGhvZCkoKQotCi0KLWRl
ZiBnZXRfb3NfaW5mbygpOgotICAgIGltcG9ydCBwbGF0Zm9ybQotICAgIG9zX25hbWUgPSBwbGF0
Zm9ybS5zeXN0ZW0oKQotICAgIG9zX3R5cGUgPSBwbGF0Zm9ybS5tYWNoaW5lKClbLTI6XQotICAg
IHJldHVybiAob3NfbmFtZSwgb3NfdHlwZSkKKyAgICBpZiBub3Qgb3MucGF0aC5pc2Rpcihvcy5w
YXRoLmpvaW4oX1NJVEVfUEFDS0FHRVNfRElSLCAndG9ybmFkbycpKToKKyAgICAgICAgc3VicHJv
Y2Vzcy5jaGVja19vdXRwdXQoWydwaXAnLCAnaW5zdGFsbCcsICctLWluc3RhbGwtb3B0aW9uJywg
Jy0tcHJlZml4PXt9Jy5mb3JtYXQoX0FVVE9JTlNUQUxMRURfRElSKSwgJ3Rvcm5hZG8nXSkKKyAg
ICBpZiBub3QgX1NJVEVfUEFDS0FHRVNfRElSIGluIHN5cy5wYXRoOgorICAgICAgICBzeXMucGF0
aC5pbnNlcnQoMCwgX1NJVEVfUEFDS0FHRVNfRElSKQo=
</data>
<flag name="review"
          id="365198"
          type_id="1"
          status="-"
          setter="dbates"
    />
    <flag name="commit-queue"
          id="365199"
          type_id="3"
          status="-"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>