<?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>88709</bug_id>
          
          <creation_ts>2012-06-09 06:09:18 -0700</creation_ts>
          <short_desc>nrwt outputs empty files for wdiff output if wdiff is not installed</short_desc>
          <delta_ts>2012-06-20 14:30:26 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NRWT</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Balazs Kelemen">kbalazs</reporter>
          <assigned_to name="Dirk Pranke">dpranke</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>645310</commentid>
    <comment_count>0</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-09 06:09:18 -0700</bug_when>
    <thetext>It would be nice to avoid generating these useless files. Furthermore, I think we should print a warning message if wdiff is not installed, otherwise folks will likely not notice this useful feature at all (on Linux it&apos;s usually not installed by default).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645429</commentid>
    <comment_count>1</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-09 15:58:14 -0700</bug_when>
    <thetext>It&apos;s not supposed to generate the files if wdiff isn&apos;t installed, so you&apos;ve found a bug :).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653176</commentid>
    <comment_count>2</comment_count>
      <attachid>148500</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-19 21:34:41 -0700</bug_when>
    <thetext>Created attachment 148500
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653588</commentid>
    <comment_count>3</comment_count>
      <attachid>148500</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-06-20 10:15:44 -0700</bug_when>
    <thetext>Comment on attachment 148500
Patch

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

Is there a test for this?

Do we need to update the code that generates results.html to make sure it doesn&apos;t include links to the non-existent diffs? We should have a test for that.

&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:239
&gt; +    def _log_wdiff_missing(self):
&gt; +        _log.warning(&quot;wdiff is not installed; please install it to generate word-by-word diffs.&quot;)
&gt; +        _log.warning(&apos;&apos;)

I would change this method to just return the string to output.  Then you don&apos;t have to duplicate the calls to _log.warning and the calls to _log.warning are next to the &apos;if logging&apos; check.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653677</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-20 11:19:10 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 148500 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=148500&amp;action=review
&gt; 
&gt; Is there a test for this?
&gt; 

No ... I realized after I uploaded this last night that I needed to add some tests. Will do so.

&gt; Do we need to update the code that generates results.html to make sure it doesn&apos;t include links to the non-existent diffs? We should have a test for that.
&gt;

No, the code already handles that, but I&apos;ll add tests.
 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:239
&gt; &gt; +    def _log_wdiff_missing(self):
&gt; &gt; +        _log.warning(&quot;wdiff is not installed; please install it to generate word-by-word diffs.&quot;)
&gt; &gt; +        _log.warning(&apos;&apos;)
&gt; 
&gt; I would change this method to just return the string to output.  Then you don&apos;t have to duplicate the calls to _log.warning and the calls to _log.warning are next to the &apos;if logging&apos; check.

Ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653877</commentid>
    <comment_count>5</comment_count>
      <attachid>148652</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-20 14:13:45 -0700</bug_when>
    <thetext>Created attachment 148652
update w/ review feedback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>653896</commentid>
    <comment_count>6</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-20 14:30:26 -0700</bug_when>
    <thetext>Committed r120865: &lt;http://trac.webkit.org/changeset/120865&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148500</attachid>
            <date>2012-06-19 21:34:41 -0700</date>
            <delta_ts>2012-06-20 14:13:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88709-20120619213440.patch</filename>
            <type>text/plain</type>
            <size>8910</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwNzk1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2ExY2MxNDdjYTUwZGU2MjI4ZWQ3NzMxYTA2OTM5Y2Jk
ZDkwZDgzNy4uNzUwODg4MDgwZWI5MGM0NzEzYWVhODRjYWVjYjQwNjc3YTcxZjI5NCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMy
IEBACiAyMDEyLTA2LTE5ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCisg
ICAgICAgIG5yd3Qgb3V0cHV0cyBlbXB0eSBmaWxlcyBmb3Igd2RpZmYgb3V0cHV0IGlmIHdkaWZm
IGlzIG5vdCBpbnN0YWxsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg4NzA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgRG9uJ3Qgd3JpdGUgLXdkaWZmIG9yIC1wcmV0dHkuaHRtbCBmaWxlcyBpZiB3ZGlm
ZiBvciBwcmV0dHlwYXRjaAorICAgICAgICBhcmVuJ3QgYXZhaWxhYmxlLCBhbmQgY2xlYW4gdXAg
dGhlIGhhbmRsaW5nIGZvciB0aGVtIGluIHRoZSBwb3J0CisgICAgICAgIGNvZGUuCisKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3Vs
dF93cml0ZXIucHk6CisgICAgICAgIChUZXN0UmVzdWx0V3JpdGVyLmNyZWF0ZV90ZXh0X2RpZmZf
YW5kX3dyaXRlX3Jlc3VsdCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAoUG9ydC5jaGVja19wcmV0dHlfcGF0Y2gpOgorICAg
ICAgICAoUG9ydC5jaGVja193ZGlmZik6CisgICAgICAgIChQb3J0Ll9sb2dfd2RpZmZfbWlzc2lu
Zyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1
bV9saW51eC5weToKKyAgICAgICAgKENocm9taXVtTGludXhQb3J0LmNoZWNrX2J1aWxkKToKKyAg
ICAgICAgKENocm9taXVtTGludXhQb3J0Ll9sb2dfd2RpZmZfbWlzc2luZyk6CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWMucHk6CisgICAg
ICAgIChDaHJvbWl1bU1hY1BvcnQuY2hlY2tfYnVpbGQpOgorICAgICAgICAoQ2hyb21pdW1NYWNQ
b3J0KToKKyAgICAgICAgKENocm9taXVtTWFjUG9ydC5fbG9nX3dkaWZmX21pc3NpbmcpOgorICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjX3Vu
aXR0ZXN0LnB5OgorICAgICAgICAoQ2hyb21pdW1NYWNQb3J0VGVzdCk6CisKKzIwMTItMDYtMTkg
IERpcmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CisKICAgICAgICAgTlJXVCBzcGlu
cyB1cCBhbmQgZG93biB0aGUgV2ViU29ja2V0IHNlcnZlciB3aGVuIHJ1bm5pbmcgYSBzaW5nbGUg
SFRUUCB0ZXN0IGZyb20gdGhlIGNvbW1hbmQgbGluZQogICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ0ODkKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9y
ZXN1bHRfd3JpdGVyLnB5CmluZGV4IGZlY2RkYWQ0Njk1ZmM0YWM5ZjI5MGNjNTZjODA3N2U1ZGUz
NjRlNTkuLjYyZDIxNGVlOWYzNDhmODBhZmIwNzJhMzg3YjNlOWJjYTFiNTA2MzAgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3Rf
cmVzdWx0X3dyaXRlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkKQEAgLTE4NSwxNCArMTg1LDE2IEBA
IGNsYXNzIFRlc3RSZXN1bHRXcml0ZXIob2JqZWN0KToKICAgICAgICAgZnMud3JpdGVfYmluYXJ5
X2ZpbGUoZGlmZl9maWxlbmFtZSwgZGlmZikKIAogICAgICAgICAjIFNoZWxsIG91dCB0byB3ZGlm
ZiB0byBnZXQgY29sb3JlZCBpbmxpbmUgZGlmZnMuCi0gICAgICAgIHdkaWZmID0gc2VsZi5fcG9y
dC53ZGlmZl90ZXh0KGV4cGVjdGVkX2ZpbGVuYW1lLCBhY3R1YWxfZmlsZW5hbWUpCi0gICAgICAg
IHdkaWZmX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2VsZi5GSUxFTkFNRV9TVUZG
SVhfV0RJRkYpCi0gICAgICAgIGZzLndyaXRlX2JpbmFyeV9maWxlKHdkaWZmX2ZpbGVuYW1lLCB3
ZGlmZikKKyAgICAgICAgaWYgc2VsZi5fcG9ydC53ZGlmZl9hdmFpbGFibGUoKToKKyAgICAgICAg
ICAgIHdkaWZmID0gc2VsZi5fcG9ydC53ZGlmZl90ZXh0KGV4cGVjdGVkX2ZpbGVuYW1lLCBhY3R1
YWxfZmlsZW5hbWUpCisgICAgICAgICAgICB3ZGlmZl9maWxlbmFtZSA9IHNlbGYub3V0cHV0X2Zp
bGVuYW1lKHNlbGYuRklMRU5BTUVfU1VGRklYX1dESUZGKQorICAgICAgICAgICAgZnMud3JpdGVf
YmluYXJ5X2ZpbGUod2RpZmZfZmlsZW5hbWUsIHdkaWZmKQogCiAgICAgICAgICMgVXNlIFdlYktp
dCdzIFByZXR0eVBhdGNoLnJiIHRvIGdldCBhbiBIVE1MIGRpZmYuCi0gICAgICAgIHByZXR0eV9w
YXRjaCA9IHNlbGYuX3BvcnQucHJldHR5X3BhdGNoX3RleHQoZGlmZl9maWxlbmFtZSkKLSAgICAg
ICAgcHJldHR5X3BhdGNoX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2VsZi5GSUxF
TkFNRV9TVUZGSVhfUFJFVFRZX1BBVENIKQotICAgICAgICBmcy53cml0ZV9iaW5hcnlfZmlsZShw
cmV0dHlfcGF0Y2hfZmlsZW5hbWUsIHByZXR0eV9wYXRjaCkKKyAgICAgICAgaWYgc2VsZi5fcG9y
dC5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCk6CisgICAgICAgICAgICBwcmV0dHlfcGF0Y2ggPSBz
ZWxmLl9wb3J0LnByZXR0eV9wYXRjaF90ZXh0KGRpZmZfZmlsZW5hbWUpCisgICAgICAgICAgICBw
cmV0dHlfcGF0Y2hfZmlsZW5hbWUgPSBzZWxmLm91dHB1dF9maWxlbmFtZShzZWxmLkZJTEVOQU1F
X1NVRkZJWF9QUkVUVFlfUEFUQ0gpCisgICAgICAgICAgICBmcy53cml0ZV9iaW5hcnlfZmlsZShw
cmV0dHlfcGF0Y2hfZmlsZW5hbWUsIHByZXR0eV9wYXRjaCkKIAogICAgIGRlZiB3cml0ZV9hdWRp
b19maWxlcyhzZWxmLCBhY3R1YWxfYXVkaW8sIGV4cGVjdGVkX2F1ZGlvKToKICAgICAgICAgc2Vs
Zi53cml0ZV9vdXRwdXRfZmlsZXMoJy53YXYnLCBhY3R1YWxfYXVkaW8sIGV4cGVjdGVkX2F1ZGlv
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9i
YXNlLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5
CmluZGV4IDllNzNiMmM1NWZlODNhNDQ5M2NkZGQ2MzNmYTlhNDkwNzEwODY5YmMuLjMwYTg5OTNk
OThhMzkxYzc5Mjc3ODFhMzZiMDI1YzVmZmZmY2YyMTkgMTAwNzU1Ci0tLSBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKQEAgLTIwOCwxNCArMjA4LDE0IEBA
IGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6CiAgICAgICAg
ICAgICBpZiBlLmVycm5vIGluIFtlcnJuby5FTk9FTlQsIGVycm5vLkVBQ0NFUywgZXJybm8uRUNI
SUxEXToKICAgICAgICAgICAgICAgICBpZiBsb2dnaW5nOgotICAgICAgICAgICAgICAgICAgICBf
bG9nLmVycm9yKCJSdWJ5IGlzIG5vdCBpbnN0YWxsZWQ7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBw
YXRjaGVzLiIpCi0gICAgICAgICAgICAgICAgICAgIF9sb2cuZXJyb3IoJycpCisgICAgICAgICAg
ICAgICAgICAgIF9sb2cud2FybmluZygiUnVieSBpcyBub3QgaW5zdGFsbGVkOyBjYW4ndCBnZW5l
cmF0ZSBwcmV0dHkgcGF0Y2hlcy4iKQorICAgICAgICAgICAgICAgICAgICBfbG9nLndhcm5pbmco
JycpCiAgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAKICAgICAgICAgaWYgbm90IHNlbGYu
X2ZpbGVzeXN0ZW0uZXhpc3RzKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoKToKICAgICAgICAgICAg
IGlmIGxvZ2dpbmc6Ci0gICAgICAgICAgICAgICAgX2xvZy5lcnJvcigiVW5hYmxlIHRvIGZpbmQg
JXM7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRjaGVzLiIgJSBzZWxmLl9wcmV0dHlfcGF0Y2hf
cGF0aCkKLSAgICAgICAgICAgICAgICBfbG9nLmVycm9yKCcnKQorICAgICAgICAgICAgICAgIF9s
b2cud2FybmluZygiVW5hYmxlIHRvIGZpbmQgJXM7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRj
aGVzLiIgJSBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCkKKyAgICAgICAgICAgICAgICBfbG9nLndh
cm5pbmcoJycpCiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIAogICAgICAgICByZXR1cm4gVHJ1
ZQpAQCAtMjI5LDExICsyMjksMTUgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAg
XyA9IHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChbc2VsZi5fcGF0aF90b193ZGlmZigpLCAn
LS1oZWxwJ10pCiAgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgogICAgICAgICAgICAgaWYgbG9nZ2lu
ZzoKLSAgICAgICAgICAgICAgICBfbG9nLmVycm9yKCJ3ZGlmZiBpcyBub3QgaW5zdGFsbGVkLiIp
CisgICAgICAgICAgICAgICAgc2VsZi5fbG9nX3dkaWZmX21pc3NpbmcoKQogICAgICAgICAgICAg
cmV0dXJuIEZhbHNlCiAKICAgICAgICAgcmV0dXJuIFRydWUKIAorICAgIGRlZiBfbG9nX3dkaWZm
X21pc3Npbmcoc2VsZik6CisgICAgICAgIF9sb2cud2FybmluZygid2RpZmYgaXMgbm90IGluc3Rh
bGxlZDsgcGxlYXNlIGluc3RhbGwgaXQgdG8gZ2VuZXJhdGUgd29yZC1ieS13b3JkIGRpZmZzLiIp
CisgICAgICAgIF9sb2cud2FybmluZygnJykKKwogICAgIGRlZiBjaGVja19odHRwZChzZWxmKToK
ICAgICAgICAgaWYgc2VsZi5fdXNlc19hcGFjaGUoKToKICAgICAgICAgICAgIGh0dHBkX3BhdGgg
PSBzZWxmLl9wYXRoX3RvX2FwYWNoZSgpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX2xpbnV4LnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5weQppbmRleCAwNWVlNjJk
ZDY2ZDcyZjAyOTVhYmE5MTNkMjVmYWYyYmU4YWYwZDUwLi41MTVlY2NhZmFiYWUxZmIwNjA3OGFh
ZWYxMzc2OTU0ZTI2MTFhNjczIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX2xpbnV4LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbGludXgucHkKQEAgLTExMiw4ICsxMTIs
NiBAQCBjbGFzcyBDaHJvbWl1bUxpbnV4UG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogCiAg
ICAgZGVmIGNoZWNrX2J1aWxkKHNlbGYsIG5lZWRzX2h0dHApOgogICAgICAgICByZXN1bHQgPSBj
aHJvbWl1bS5DaHJvbWl1bVBvcnQuY2hlY2tfYnVpbGQoc2VsZiwgbmVlZHNfaHR0cCkKLSAgICAg
ICAgcmVzdWx0ID0gc2VsZi5jaGVja193ZGlmZigpIGFuZCByZXN1bHQKLQogICAgICAgICBpZiBu
b3QgcmVzdWx0OgogICAgICAgICAgICAgX2xvZy5lcnJvcignRm9yIGNvbXBsZXRlIExpbnV4IGJ1
aWxkIHJlcXVpcmVtZW50cywgcGxlYXNlIHNlZTonKQogICAgICAgICAgICAgX2xvZy5lcnJvcign
JykKQEAgLTE0NSwxMyArMTQzLDkgQEAgY2xhc3MgQ2hyb21pdW1MaW51eFBvcnQoY2hyb21pdW0u
Q2hyb21pdW1Qb3J0KToKICAgICAgICAgICAgIF9sb2cuZXJyb3IoJycpCiAgICAgICAgIHJldHVy
biByZXN1bHQKIAotICAgIGRlZiBjaGVja193ZGlmZihzZWxmLCBsb2dnaW5nPVRydWUpOgotICAg
ICAgICByZXN1bHQgPSBzZWxmLl9jaGVja19maWxlX2V4aXN0cyhzZWxmLl9wYXRoX3RvX3dkaWZm
KCksICd3ZGlmZicpCi0gICAgICAgIGlmIG5vdCByZXN1bHQgYW5kIGxvZ2dpbmc6Ci0gICAgICAg
ICAgICBfbG9nLmVycm9yKCcgICAgUGxlYXNlIGluc3RhbGwgdXNpbmc6ICJzdWRvIGFwdC1nZXQg
aW5zdGFsbCB3ZGlmZiInKQotICAgICAgICAgICAgX2xvZy5lcnJvcignJykKLSAgICAgICAgIyBG
SVhNRTogVGhlIENocm9taXVtTWFjIHBvcnQgYWx3YXlzIHJldHVybnMgVHJ1ZS4KLSAgICAgICAg
cmV0dXJuIHJlc3VsdAorICAgIGRlZiBfbG9nX3dkaWZmX21pc3Npbmcoc2VsZik6CisgICAgICAg
IF9sb2cud2FybmluZygnICAgIHdkaWZmIGlzIG5vdCBpbnN0YWxsZWQ7IHBsZWFzZSBpbnN0YWxs
IHVzaW5nICJzdWRvIGFwdC1nZXQgaW5zdGFsbCB3ZGlmZiInKQorICAgICAgICBfbG9nLndhcm5p
bmcoJycpCiAKICAgICBkZWYgX3BhdGhfdG9fYXBhY2hlKHNlbGYpOgogICAgICAgICBpZiBzZWxm
Ll9pc19yZWRoYXRfYmFzZWQoKToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWMucHkKaW5kZXggNjk4ZGI3MjY2YjhlOWMw
Y2VhYmJiZmRmMzBiODNiMGY1YjE4N2MzYy4uMTQ4YjhhMmFkNmU3NzVhNjI1NzBmYWUzMWYyOTJl
YjZjMjhmN2NjZCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9jaHJvbWl1bV9tYWMucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWMucHkKQEAgLTkwLDcgKzkwLDYgQEAgY2xhc3MgQ2hy
b21pdW1NYWNQb3J0KGNocm9taXVtLkNocm9taXVtUG9ydCk6CiAKICAgICBkZWYgY2hlY2tfYnVp
bGQoc2VsZiwgbmVlZHNfaHR0cCk6CiAgICAgICAgIHJlc3VsdCA9IGNocm9taXVtLkNocm9taXVt
UG9ydC5jaGVja19idWlsZChzZWxmLCBuZWVkc19odHRwKQotICAgICAgICByZXN1bHQgPSBzZWxm
LmNoZWNrX3dkaWZmKCkgYW5kIHJlc3VsdAogICAgICAgICBpZiBub3QgcmVzdWx0OgogICAgICAg
ICAgICAgX2xvZy5lcnJvcignRm9yIGNvbXBsZXRlIE1hYyBidWlsZCByZXF1aXJlbWVudHMsIHBs
ZWFzZSBzZWU6JykKICAgICAgICAgICAgIF9sb2cuZXJyb3IoJycpCkBAIC0xMDUsMTggKzEwNCwx
MyBAQCBjbGFzcyBDaHJvbWl1bU1hY1BvcnQoY2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKICAgICAj
IFBST1RFQ1RFRCBNRVRIT0RTCiAgICAgIwogCi0gICAgZGVmIGNoZWNrX3dkaWZmKHNlbGYsIGxv
Z2dpbmc9VHJ1ZSk6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgICMgV2UncmUgaWdub3Jpbmcg
dGhlIHJldHVybiBhbmQgYWx3YXlzIHJldHVybmluZyBUcnVlCi0gICAgICAgICAgICBzZWxmLl9l
eGVjdXRpdmUucnVuX2NvbW1hbmQoW3NlbGYuX3BhdGhfdG9fd2RpZmYoKV0sIGVycm9yX2hhbmRs
ZXI9c2VsZi5fZXhlY3V0aXZlLmlnbm9yZV9lcnJvcikKLSAgICAgICAgZXhjZXB0IE9TRXJyb3I6
Ci0gICAgICAgICAgICBpZiBsb2dnaW5nOgotICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygn
d2RpZmYgbm90IGZvdW5kLiBJbnN0YWxsIHVzaW5nIE1hY1BvcnRzIG9yIHNvbWUgb3RoZXIgbWVh
bnMnKQotICAgICAgICByZXR1cm4gVHJ1ZQotCiAgICAgZGVmIF9saWdodHRwZF9wYXRoKHNlbGYs
ICpjb21wcyk6CiAgICAgICAgIHJldHVybiBzZWxmLnBhdGhfZnJvbV9jaHJvbWl1bV9iYXNlKCd0
aGlyZF9wYXJ0eScsICdsaWdodHRwZCcsICdtYWMnLCAqY29tcHMpCiAKKyAgICBkZWYgX2xvZ193
ZGlmZl9taXNzaW5nKHNlbGYpOgorICAgICAgICBfbG9nLndhcm5pbmcoJyAgICB3ZGlmZiBpcyBu
b3QgaW5zdGFsbGVkOyBwbGVhc2UgaW5zdGFsbCBmcm9tIE1hY1BvcnRzIG9yIGVsc2V3aGVyZScp
CisgICAgICAgIF9sb2cud2FybmluZygnJykKKwogICAgIGRlZiBfcGF0aF90b19hcGFjaGUoc2Vs
Zik6CiAgICAgICAgIHJldHVybiAnL3Vzci9zYmluL2h0dHBkJwogCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hY191bml0dGVz
dC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1f
bWFjX3VuaXR0ZXN0LnB5CmluZGV4IGE4NWJlY2E3NDI0MzZjOTczYzgwZDcyOTUyOTY0M2U1ZDk5
ZDAxNWIuLjc3Y2VlMmIzMjUzYjJjN2FmN2VmNzk5ZjcyMGFkOTVjZDU5Yjc0YWUgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFj
X3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvY2hyb21pdW1fbWFjX3VuaXR0ZXN0LnB5CkBAIC0zOSw5ICszOSw2IEBAIGNsYXNzIENocm9t
aXVtTWFjUG9ydFRlc3QocG9ydF90ZXN0Y2FzZS5Qb3J0VGVzdENhc2UpOgogICAgIHBvcnRfbmFt
ZSA9ICdjaHJvbWl1bS1tYWMnCiAgICAgcG9ydF9tYWtlciA9IGNocm9taXVtX21hYy5DaHJvbWl1
bU1hY1BvcnQKIAotICAgIGRlZiB0ZXN0X2NoZWNrX3dkaWZmKHNlbGYpOgotICAgICAgICBzZWxm
LmFzc2VydFRydWUoc2VsZi5tYWtlX3BvcnQoKS5jaGVja193ZGlmZigpKQotCiAgICAgZGVmIGFz
c2VydF9uYW1lKHNlbGYsIHBvcnRfbmFtZSwgb3NfdmVyc2lvbl9zdHJpbmcsIGV4cGVjdGVkKToK
ICAgICAgICAgcG9ydCA9IHNlbGYubWFrZV9wb3J0KG9zX3ZlcnNpb249b3NfdmVyc2lvbl9zdHJp
bmcsIHBvcnRfbmFtZT1wb3J0X25hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKGV4cGVj
dGVkLCBwb3J0Lm5hbWUoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>148652</attachid>
            <date>2012-06-20 14:13:45 -0700</date>
            <delta_ts>2012-06-20 14:26:28 -0700</delta_ts>
            <desc>update w/ review feedback</desc>
            <filename>bug-88709-20120620141344.patch</filename>
            <type>text/plain</type>
            <size>11680</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwODUzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWRlMTlmYmY1MzIxNzJhMmNmN2NlYzk2MWIyMWQzY2Ri
ZTM3YzY3OS4uMTMwYTBiMmQ2MGJjNTA1ODRmNTVjZWUzY2E2ZTA3M2E4MGYxZDM5MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMy
IEBACisyMDEyLTA2LTE5ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIG5yd3Qgb3V0cHV0cyBlbXB0eSBmaWxlcyBmb3Igd2RpZmYgb3V0cHV0IGlmIHdkaWZm
IGlzIG5vdCBpbnN0YWxsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg4NzA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgRG9uJ3Qgd3JpdGUgLXdkaWZmIG9yIC1wcmV0dHkuaHRtbCBmaWxlcyBpZiB3ZGlm
ZiBvciBwcmV0dHlwYXRjaAorICAgICAgICBhcmVuJ3QgYXZhaWxhYmxlLCBhbmQgY2xlYW4gdXAg
dGhlIGhhbmRsaW5nIGZvciB0aGVtIGluIHRoZSBwb3J0CisgICAgICAgIGNvZGUuCisKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5
OgorICAgICAgICAoTWFpblRlc3QudGVzdF9vdXRwdXRfZGlmZnMpOgorICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5w
eToKKyAgICAgICAgKFRlc3RSZXN1bHRXcml0ZXIuY3JlYXRlX3RleHRfZGlmZl9hbmRfd3JpdGVf
cmVzdWx0KToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jh
c2UucHk6CisgICAgICAgIChQb3J0LmNoZWNrX3ByZXR0eV9wYXRjaCk6CisgICAgICAgIChQb3J0
LmNoZWNrX3dkaWZmKToKKyAgICAgICAgKFBvcnQuX3dkaWZmX21pc3NpbmdfbWVzc2FnZSk6Cisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51
eC5weToKKyAgICAgICAgKENocm9taXVtTGludXhQb3J0LmNoZWNrX2J1aWxkKToKKyAgICAgICAg
KENocm9taXVtTGludXhQb3J0Ll93ZGlmZl9taXNzaW5nX21lc3NhZ2UpOgorICAgICAgICAqIFNj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5OgorICAgICAg
ICAoQ2hyb21pdW1NYWNQb3J0LmNoZWNrX2J1aWxkKToKKyAgICAgICAgKENocm9taXVtTWFjUG9y
dCk6CisgICAgICAgIChDaHJvbWl1bU1hY1BvcnQuX3dkaWZmX21pc3NpbmdfbWVzc2FnZSk6Cisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWNf
dW5pdHRlc3QucHk6CisgICAgICAgIChDaHJvbWl1bU1hY1BvcnRUZXN0KToKKwogMjAxMi0wNi0y
MCAgRGlyayBQcmFua2UgIDxkcHJhbmtlQGNocm9taXVtLm9yZz4KIAogICAgICAgICBGaXggaW1w
b3J0IHNvcnRpbmcgbWlzc2VkIGluIHIxMjA4NDYKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weSBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVz
dWx0X3dyaXRlci5weQppbmRleCBmZWNkZGFkNDY5NWZjNGFjOWYyOTBjYzU2YzgwNzdlNWRlMzY0
ZTU5Li42MmQyMTRlZTlmMzQ4ZjgwYWZiMDcyYTM4N2IzZTliY2ExYjUwNjMwIDEwMDY0NAotLS0g
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jl
c3VsdF93cml0ZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
Y29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5CkBAIC0xODUsMTQgKzE4NSwxNiBAQCBj
bGFzcyBUZXN0UmVzdWx0V3JpdGVyKG9iamVjdCk6CiAgICAgICAgIGZzLndyaXRlX2JpbmFyeV9m
aWxlKGRpZmZfZmlsZW5hbWUsIGRpZmYpCiAKICAgICAgICAgIyBTaGVsbCBvdXQgdG8gd2RpZmYg
dG8gZ2V0IGNvbG9yZWQgaW5saW5lIGRpZmZzLgotICAgICAgICB3ZGlmZiA9IHNlbGYuX3BvcnQu
d2RpZmZfdGV4dChleHBlY3RlZF9maWxlbmFtZSwgYWN0dWFsX2ZpbGVuYW1lKQotICAgICAgICB3
ZGlmZl9maWxlbmFtZSA9IHNlbGYub3V0cHV0X2ZpbGVuYW1lKHNlbGYuRklMRU5BTUVfU1VGRklY
X1dESUZGKQotICAgICAgICBmcy53cml0ZV9iaW5hcnlfZmlsZSh3ZGlmZl9maWxlbmFtZSwgd2Rp
ZmYpCisgICAgICAgIGlmIHNlbGYuX3BvcnQud2RpZmZfYXZhaWxhYmxlKCk6CisgICAgICAgICAg
ICB3ZGlmZiA9IHNlbGYuX3BvcnQud2RpZmZfdGV4dChleHBlY3RlZF9maWxlbmFtZSwgYWN0dWFs
X2ZpbGVuYW1lKQorICAgICAgICAgICAgd2RpZmZfZmlsZW5hbWUgPSBzZWxmLm91dHB1dF9maWxl
bmFtZShzZWxmLkZJTEVOQU1FX1NVRkZJWF9XRElGRikKKyAgICAgICAgICAgIGZzLndyaXRlX2Jp
bmFyeV9maWxlKHdkaWZmX2ZpbGVuYW1lLCB3ZGlmZikKIAogICAgICAgICAjIFVzZSBXZWJLaXQn
cyBQcmV0dHlQYXRjaC5yYiB0byBnZXQgYW4gSFRNTCBkaWZmLgotICAgICAgICBwcmV0dHlfcGF0
Y2ggPSBzZWxmLl9wb3J0LnByZXR0eV9wYXRjaF90ZXh0KGRpZmZfZmlsZW5hbWUpCi0gICAgICAg
IHByZXR0eV9wYXRjaF9maWxlbmFtZSA9IHNlbGYub3V0cHV0X2ZpbGVuYW1lKHNlbGYuRklMRU5B
TUVfU1VGRklYX1BSRVRUWV9QQVRDSCkKLSAgICAgICAgZnMud3JpdGVfYmluYXJ5X2ZpbGUocHJl
dHR5X3BhdGNoX2ZpbGVuYW1lLCBwcmV0dHlfcGF0Y2gpCisgICAgICAgIGlmIHNlbGYuX3BvcnQu
cHJldHR5X3BhdGNoX2F2YWlsYWJsZSgpOgorICAgICAgICAgICAgcHJldHR5X3BhdGNoID0gc2Vs
Zi5fcG9ydC5wcmV0dHlfcGF0Y2hfdGV4dChkaWZmX2ZpbGVuYW1lKQorICAgICAgICAgICAgcHJl
dHR5X3BhdGNoX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2VsZi5GSUxFTkFNRV9T
VUZGSVhfUFJFVFRZX1BBVENIKQorICAgICAgICAgICAgZnMud3JpdGVfYmluYXJ5X2ZpbGUocHJl
dHR5X3BhdGNoX2ZpbGVuYW1lLCBwcmV0dHlfcGF0Y2gpCiAKICAgICBkZWYgd3JpdGVfYXVkaW9f
ZmlsZXMoc2VsZiwgYWN0dWFsX2F1ZGlvLCBleHBlY3RlZF9hdWRpbyk6CiAgICAgICAgIHNlbGYu
d3JpdGVfb3V0cHV0X2ZpbGVzKCcud2F2JywgYWN0dWFsX2F1ZGlvLCBleHBlY3RlZF9hdWRpbykK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFz
ZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQpp
bmRleCA5OTk1Y2E2MWI0YzhlNDk4ZGY2MGVlZjA4NTVlMzkyYjIwZTFmNGFkLi4wMTQ0N2MyNTA4
MDE3OWQ3N2IwZDdkOGEyNWZhMGZkZmQwMzBhNzEyIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CkBAIC0yMDgsMTQgKzIwOCwxNCBAQCBj
bGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgIGV4Y2VwdCBPU0Vycm9yLCBlOgogICAgICAgICAg
ICAgaWYgZS5lcnJubyBpbiBbZXJybm8uRU5PRU5ULCBlcnJuby5FQUNDRVMsIGVycm5vLkVDSElM
RF06CiAgICAgICAgICAgICAgICAgaWYgbG9nZ2luZzoKLSAgICAgICAgICAgICAgICAgICAgX2xv
Zy5lcnJvcigiUnVieSBpcyBub3QgaW5zdGFsbGVkOyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0
Y2hlcy4iKQotICAgICAgICAgICAgICAgICAgICBfbG9nLmVycm9yKCcnKQorICAgICAgICAgICAg
ICAgICAgICBfbG9nLndhcm5pbmcoIlJ1YnkgaXMgbm90IGluc3RhbGxlZDsgY2FuJ3QgZ2VuZXJh
dGUgcHJldHR5IHBhdGNoZXMuIikKKyAgICAgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCcn
KQogICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQogCiAgICAgICAgIGlmIG5vdCBzZWxmLl9m
aWxlc3lzdGVtLmV4aXN0cyhzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCk6CiAgICAgICAgICAgICBp
ZiBsb2dnaW5nOgotICAgICAgICAgICAgICAgIF9sb2cuZXJyb3IoIlVuYWJsZSB0byBmaW5kICVz
OyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4iICUgc2VsZi5fcHJldHR5X3BhdGNoX3Bh
dGgpCi0gICAgICAgICAgICAgICAgX2xvZy5lcnJvcignJykKKyAgICAgICAgICAgICAgICBfbG9n
Lndhcm5pbmcoIlVuYWJsZSB0byBmaW5kICVzOyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hl
cy4iICUgc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgpCisgICAgICAgICAgICAgICAgX2xvZy53YXJu
aW5nKCcnKQogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAKICAgICAgICAgcmV0dXJuIFRydWUK
QEAgLTIyOSwxMSArMjI5LDE4IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgICAgIF8g
PSBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoW3NlbGYuX3BhdGhfdG9fd2RpZmYoKSwgJy0t
aGVscCddKQogICAgICAgICBleGNlcHQgT1NFcnJvcjoKICAgICAgICAgICAgIGlmIGxvZ2dpbmc6
Ci0gICAgICAgICAgICAgICAgX2xvZy5lcnJvcigid2RpZmYgaXMgbm90IGluc3RhbGxlZC4iKQor
ICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSBzZWxmLl93ZGlmZl9taXNzaW5nX21lc3NhZ2UoKQor
ICAgICAgICAgICAgICAgIGlmIG1lc3NhZ2U6CisgICAgICAgICAgICAgICAgICAgIGZvciBsaW5l
IGluIG1lc3NhZ2Uuc3BsaXRsaW5lcygpOgorICAgICAgICAgICAgICAgICAgICAgICAgX2xvZy53
YXJuaW5nKCcgICAgJyArIGxpbmUpCisgICAgICAgICAgICAgICAgICAgICAgICBfbG9nLndhcm5p
bmcoJycpCiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIAogICAgICAgICByZXR1cm4gVHJ1ZQog
CisgICAgZGVmIF93ZGlmZl9taXNzaW5nX21lc3NhZ2Uoc2VsZik6CisgICAgICAgIHJldHVybiAn
d2RpZmYgaXMgbm90IGluc3RhbGxlZDsgcGxlYXNlIGluc3RhbGwgaXQgdG8gZ2VuZXJhdGUgd29y
ZC1ieS13b3JkIGRpZmZzLicKKwogICAgIGRlZiBjaGVja19odHRwZChzZWxmKToKICAgICAgICAg
aWYgc2VsZi5fdXNlc19hcGFjaGUoKToKICAgICAgICAgICAgIGh0dHBkX3BhdGggPSBzZWxmLl9w
YXRoX3RvX2FwYWNoZSgpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9jaHJvbWl1bS5weQppbmRleCAyYzE5MTEwNzIyYTQ1NTQ2OGQzM2YzMWIyNGRj
ZWE0OTAwYjhhM2I1Li5iNTEwMzA1YTMxZTk0ODZhNjk0MGQxMzFkMjM2NjQxMGNjMTFhYjdkIDEw
MDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9t
aXVtLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hy
b21pdW0ucHkKQEAgLTE1Miw5ICsxNTIsOSBAQCBjbGFzcyBDaHJvbWl1bVBvcnQoUG9ydCk6CiAg
ICAgICAgICAgICByZXN1bHQgPSBzZWxmLmNoZWNrX2ltYWdlX2RpZmYoCiAgICAgICAgICAgICAg
ICAgJ1RvIG92ZXJyaWRlLCBpbnZva2Ugd2l0aCAtLW5vLXBpeGVsLXRlc3RzJykgYW5kIHJlc3Vs
dAogCi0gICAgICAgICMgSXQncyBva2F5IGlmIHByZXR0eSBwYXRjaCBpc24ndCBhdmFpbGFibGUs
IGJ1dCB3ZSB3aWxsIGF0Ci0gICAgICAgICMgbGVhc3QgbG9nIGEgbWVzc2FnZS4KKyAgICAgICAg
IyBJdCdzIG9rYXkgaWYgcHJldHR5IHBhdGNoIGFuZCB3ZGlmZiBhcmVuJ3QgYXZhaWxhYmxlLCBi
dXQgd2Ugd2lsbCBhdCBsZWFzdCBsb2cgbWVzc2FnZXMuCiAgICAgICAgIHNlbGYuX3ByZXR0eV9w
YXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaCgpCisgICAgICAgIHNlbGYu
X3dkaWZmX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfd2RpZmYoKQogCiAgICAgICAgIHJldHVybiBy
ZXN1bHQKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9jaHJvbWl1bV9saW51eC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fbGludXgucHkKaW5kZXggMDVlZTYyZGQ2NmQ3MmYwMjk1YWJhOTEz
ZDI1ZmFmMmJlOGFmMGQ1MC4uZjI2YmVhNDMxMWZjOWE0NTk4OWMxYjA3ZmQ2YjIzYjdjMzk4ZGIw
MCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9j
aHJvbWl1bV9saW51eC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L2Nocm9taXVtX2xpbnV4LnB5CkBAIC0xMTIsOCArMTEyLDYgQEAgY2xhc3MgQ2hyb21p
dW1MaW51eFBvcnQoY2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKIAogICAgIGRlZiBjaGVja19idWls
ZChzZWxmLCBuZWVkc19odHRwKToKICAgICAgICAgcmVzdWx0ID0gY2hyb21pdW0uQ2hyb21pdW1Q
b3J0LmNoZWNrX2J1aWxkKHNlbGYsIG5lZWRzX2h0dHApCi0gICAgICAgIHJlc3VsdCA9IHNlbGYu
Y2hlY2tfd2RpZmYoKSBhbmQgcmVzdWx0Ci0KICAgICAgICAgaWYgbm90IHJlc3VsdDoKICAgICAg
ICAgICAgIF9sb2cuZXJyb3IoJ0ZvciBjb21wbGV0ZSBMaW51eCBidWlsZCByZXF1aXJlbWVudHMs
IHBsZWFzZSBzZWU6JykKICAgICAgICAgICAgIF9sb2cuZXJyb3IoJycpCkBAIC0xNDUsMTMgKzE0
Myw4IEBAIGNsYXNzIENocm9taXVtTGludXhQb3J0KGNocm9taXVtLkNocm9taXVtUG9ydCk6CiAg
ICAgICAgICAgICBfbG9nLmVycm9yKCcnKQogICAgICAgICByZXR1cm4gcmVzdWx0CiAKLSAgICBk
ZWYgY2hlY2tfd2RpZmYoc2VsZiwgbG9nZ2luZz1UcnVlKToKLSAgICAgICAgcmVzdWx0ID0gc2Vs
Zi5fY2hlY2tfZmlsZV9leGlzdHMoc2VsZi5fcGF0aF90b193ZGlmZigpLCAnd2RpZmYnKQotICAg
ICAgICBpZiBub3QgcmVzdWx0IGFuZCBsb2dnaW5nOgotICAgICAgICAgICAgX2xvZy5lcnJvcign
ICAgIFBsZWFzZSBpbnN0YWxsIHVzaW5nOiAic3VkbyBhcHQtZ2V0IGluc3RhbGwgd2RpZmYiJykK
LSAgICAgICAgICAgIF9sb2cuZXJyb3IoJycpCi0gICAgICAgICMgRklYTUU6IFRoZSBDaHJvbWl1
bU1hYyBwb3J0IGFsd2F5cyByZXR1cm5zIFRydWUuCi0gICAgICAgIHJldHVybiByZXN1bHQKKyAg
ICBkZWYgX3dkaWZmX21pc3NpbmdfbWVzc2FnZShzZWxmKToKKyAgICAgICAgcmV0dXJuICd3ZGlm
ZiBpcyBub3QgaW5zdGFsbGVkOyBwbGVhc2UgaW5zdGFsbCB1c2luZyAic3VkbyBhcHQtZ2V0IGlu
c3RhbGwgd2RpZmYiJwogCiAgICAgZGVmIF9wYXRoX3RvX2FwYWNoZShzZWxmKToKICAgICAgICAg
aWYgc2VsZi5faXNfcmVkaGF0X2Jhc2VkKCk6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hYy5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5CmluZGV4IDY5OGRiNzI2
NmI4ZTljMGNlYWJiYmZkZjMwYjgzYjBmNWIxODdjM2MuLmY3NDhjZDE4YTQwZTA5NDk3MjA0OWQ0
ODhkMWE4M2NiNTI5MGQ4ZDMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5CkBAIC05MCw3ICs5MCw2IEBAIGNs
YXNzIENocm9taXVtTWFjUG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogCiAgICAgZGVmIGNo
ZWNrX2J1aWxkKHNlbGYsIG5lZWRzX2h0dHApOgogICAgICAgICByZXN1bHQgPSBjaHJvbWl1bS5D
aHJvbWl1bVBvcnQuY2hlY2tfYnVpbGQoc2VsZiwgbmVlZHNfaHR0cCkKLSAgICAgICAgcmVzdWx0
ID0gc2VsZi5jaGVja193ZGlmZigpIGFuZCByZXN1bHQKICAgICAgICAgaWYgbm90IHJlc3VsdDoK
ICAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0ZvciBjb21wbGV0ZSBNYWMgYnVpbGQgcmVxdWlyZW1l
bnRzLCBwbGVhc2Ugc2VlOicpCiAgICAgICAgICAgICBfbG9nLmVycm9yKCcnKQpAQCAtMTA1LDE4
ICsxMDQsMTIgQEAgY2xhc3MgQ2hyb21pdW1NYWNQb3J0KGNocm9taXVtLkNocm9taXVtUG9ydCk6
CiAgICAgIyBQUk9URUNURUQgTUVUSE9EUwogICAgICMKIAotICAgIGRlZiBjaGVja193ZGlmZihz
ZWxmLCBsb2dnaW5nPVRydWUpOgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICAjIFdlJ3JlIGln
bm9yaW5nIHRoZSByZXR1cm4gYW5kIGFsd2F5cyByZXR1cm5pbmcgVHJ1ZQotICAgICAgICAgICAg
c2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtzZWxmLl9wYXRoX3RvX3dkaWZmKCldLCBlcnJv
cl9oYW5kbGVyPXNlbGYuX2V4ZWN1dGl2ZS5pZ25vcmVfZXJyb3IpCi0gICAgICAgIGV4Y2VwdCBP
U0Vycm9yOgotICAgICAgICAgICAgaWYgbG9nZ2luZzoKLSAgICAgICAgICAgICAgICBfbG9nLndh
cm5pbmcoJ3dkaWZmIG5vdCBmb3VuZC4gSW5zdGFsbCB1c2luZyBNYWNQb3J0cyBvciBzb21lIG90
aGVyIG1lYW5zJykKLSAgICAgICAgcmV0dXJuIFRydWUKLQogICAgIGRlZiBfbGlnaHR0cGRfcGF0
aChzZWxmLCAqY29tcHMpOgogICAgICAgICByZXR1cm4gc2VsZi5wYXRoX2Zyb21fY2hyb21pdW1f
YmFzZSgndGhpcmRfcGFydHknLCAnbGlnaHR0cGQnLCAnbWFjJywgKmNvbXBzKQogCisgICAgZGVm
IF93ZGlmZl9taXNzaW5nX21lc3NhZ2Uoc2VsZik6CisgICAgICAgIHJldHVybiAnd2RpZmYgaXMg
bm90IGluc3RhbGxlZDsgcGxlYXNlIGluc3RhbGwgZnJvbSBNYWNQb3J0cyBvciBlbHNld2hlcmUn
CisKICAgICBkZWYgX3BhdGhfdG9fYXBhY2hlKHNlbGYpOgogICAgICAgICByZXR1cm4gJy91c3Iv
c2Jpbi9odHRwZCcKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9jaHJvbWl1bV9tYWNfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hY191bml0dGVzdC5weQppbmRleCBhODVi
ZWNhNzQyNDM2Yzk3M2M4MGQ3Mjk1Mjk2NDNlNWQ5OWQwMTViLi43N2NlZTJiMzI1M2IyYzdhZjdl
Zjc5OWY3MjBhZDk1Y2Q1OWI3NGFlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hY191bml0dGVzdC5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hY191bml0dGVzdC5w
eQpAQCAtMzksOSArMzksNiBAQCBjbGFzcyBDaHJvbWl1bU1hY1BvcnRUZXN0KHBvcnRfdGVzdGNh
c2UuUG9ydFRlc3RDYXNlKToKICAgICBwb3J0X25hbWUgPSAnY2hyb21pdW0tbWFjJwogICAgIHBv
cnRfbWFrZXIgPSBjaHJvbWl1bV9tYWMuQ2hyb21pdW1NYWNQb3J0CiAKLSAgICBkZWYgdGVzdF9j
aGVja193ZGlmZihzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWFrZV9wb3J0
KCkuY2hlY2tfd2RpZmYoKSkKLQogICAgIGRlZiBhc3NlcnRfbmFtZShzZWxmLCBwb3J0X25hbWUs
IG9zX3ZlcnNpb25fc3RyaW5nLCBleHBlY3RlZCk6CiAgICAgICAgIHBvcnQgPSBzZWxmLm1ha2Vf
cG9ydChvc192ZXJzaW9uPW9zX3ZlcnNpb25fc3RyaW5nLCBwb3J0X25hbWU9cG9ydF9uYW1lKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhleHBlY3RlZCwgcG9ydC5uYW1lKCkpCmRpZmYgLS1n
aXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3Rz
X2ludGVncmF0aW9udGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5CmluZGV4IGJmZGI1NWNjOTYzNGMw
MjMzZWU1OTVjYTM2ZGZiZjAzZDY5NmEyOTEuLmQ1YzFlMTRlMWRlZmRlODI4MTkzNmY5YTk2NzI1
MmY4YjA4MTRiNmEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5CisrKyBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0
LnB5CkBAIC04ODUsNiArODg1LDIyIEBAIGNsYXNzIE1haW5UZXN0KHVuaXR0ZXN0LlRlc3RDYXNl
LCBTdHJlYW1UZXN0aW5nTWl4aW4pOgogICAgICAgICB0ZXN0c19ydW4gPSBnZXRfdGVzdHNfcnVu
KFsnaHR0cCddLCB0ZXN0c19pbmNsdWRlZD1UcnVlLCBmbGF0dGVuX2JhdGNoZXM9VHJ1ZSkKICAg
ICAgICAgc2VsZi5hc3NlcnRUcnVlKCdwbGF0Zm9ybS90ZXN0LXNub3ctbGVvcGFyZC9odHRwL3Rl
c3QuaHRtbCcgaW4gdGVzdHNfcnVuKQogCisgICAgZGVmIHRlc3Rfb3V0cHV0X2RpZmZzKHNlbGYp
OgorICAgICAgICAjIFRlc3QgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgZ2VuZXJhdGUgLXdkaWZm
Lmh0bWwgb3IgLXByZXR0eS5odG1sIGlmIHdkaWZmIGFuZCBQcmV0dHlQYXRjaAorICAgICAgICAj
IGFyZW4ndCBhdmFpbGFibGUuCisgICAgICAgIGhvc3QgPSBNb2NrSG9zdCgpCisgICAgICAgIHJl
cywgb3V0LCBlcnIsIF8gPSBsb2dnaW5nX3J1bihbJy0tcGl4ZWwtdGVzdHMnLCAnZmFpbHVyZXMv
dW5leHBlY3RlZC90ZXh0LWltYWdlLWNoZWNrc3VtLmh0bWwnXSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRlc3RzX2luY2x1ZGVkPVRydWUsIHJlY29yZF9yZXN1bHRz
PVRydWUsIGhvc3Q9aG9zdCkKKyAgICAgICAgd3JpdHRlbl9maWxlcyA9IGhvc3QuZmlsZXN5c3Rl
bS53cml0dGVuX2ZpbGVzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShhbnkocGF0aC5lbmRzd2l0
aCgnLWRpZmYudHh0JykgZm9yIHBhdGggaW4gd3JpdHRlbl9maWxlcy5rZXlzKCkpKQorICAgICAg
ICBzZWxmLmFzc2VydEZhbHNlKGFueShwYXRoLmVuZHN3aXRoKCctd2RpZmYuaHRtbCcpIGZvciBw
YXRoIGluIHdyaXR0ZW5fZmlsZXMua2V5cygpKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShh
bnkocGF0aC5lbmRzd2l0aCgnLXByZXR0eS1kaWZmLmh0bWwnKSBmb3IgcGF0aCBpbiB3cml0dGVu
X2ZpbGVzLmtleXMoKSkpCisKKyAgICAgICAgZnVsbF9yZXN1bHRzX3RleHQgPSBob3N0LmZpbGVz
eXN0ZW0ucmVhZF90ZXh0X2ZpbGUoJy90bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxsX3Jlc3Vs
dHMuanNvbicpCisgICAgICAgIGZ1bGxfcmVzdWx0cyA9IGpzb24ubG9hZHMoZnVsbF9yZXN1bHRz
X3RleHQucmVwbGFjZSgiQUREX1JFU1VMVFMoIiwgIiIpLnJlcGxhY2UoIik7IiwgIiIpKQorICAg
ICAgICBzZWxmLmFzc2VydEVxdWFscyhmdWxsX3Jlc3VsdHNbJ2hhc193ZGlmZiddLCBGYWxzZSkK
KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZnVsbF9yZXN1bHRzWydoYXNfcHJldHR5X3BhdGNo
J10sIEZhbHNlKQorCiAKIGNsYXNzIEVuZFRvRW5kVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAg
ICAgZGVmIHBhcnNlX2Z1bGxfcmVzdWx0cyhzZWxmLCBmdWxsX3Jlc3VsdHNfdGV4dCk6Cg==
</data>
<flag name="review"
          id="156456"
          type_id="1"
          status="+"
          setter="tony"
    />
          </attachment>
      

    </bug>

</bugzilla>