<?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>77506</bug_id>
          
          <creation_ts>2012-01-31 20:26:27 -0800</creation_ts>
          <short_desc>[PerformanceTests] tests have dependencies</short_desc>
          <delta_ts>2012-02-17 02:15:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>77671</dependson>
          <blocked>77037</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>546767</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-31 20:26:27 -0800</bug_when>
    <thetext>It appears that using the same DumpRenderTree instance for multiple performance tests influence the results.

For example, enabling DOM/DOMTable.html in http://trac.webkit.org/changeset/106409/ resulted in 15% run-time for DOM/GridSort:
http://webkit-perf.appspot.com/graph.html?#tests=[[9106,2001,3001]]&amp;sel=1328051227590.1023,1328054799243.6458&amp;displayrange=7&amp;datatype=running</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546771</commentid>
    <comment_count>1</comment_count>
      <attachid>124877</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-31 20:29:02 -0800</bug_when>
    <thetext>Created attachment 124877
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546869</commentid>
    <comment_count>2</comment_count>
      <attachid>124877</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-01 00:59:43 -0800</bug_when>
    <thetext>Comment on attachment 124877
Fixes the bug

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

&gt; Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py:205
&gt;          driver = None

Should driver be a local variable in the loop?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546883</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 01:17:00 -0800</bug_when>
    <thetext>Landed in r106442.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547307</commentid>
    <comment_count>4</comment_count>
      <attachid>124877</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-02-01 12:56:58 -0800</bug_when>
    <thetext>Comment on attachment 124877
Fixes the bug

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

&gt;&gt; Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py:205
&gt;&gt;          driver = None
&gt; 
&gt; Should driver be a local variable in the loop?

I think I&apos;m on the same page as Adam here. Why are you creating a driver every time thought the loop? Just create one outside the loop. run_test() should restart it as needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547396</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 15:00:51 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 124877 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124877&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py:205
&gt; &gt;&gt;          driver = None
&gt; &gt; 
&gt; &gt; Should driver be a local variable in the loop?
&gt; 
&gt; I think I&apos;m on the same page as Adam here. Why are you creating a driver every time thought the loop? Just create one outside the loop. run_test() should restart it as needed.

I think that&apos;s the opposite of what Adam is saying. He&apos;s just pointing out the fact driver is declared outside of the loop even though new driver is assigned in every iteration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547405</commentid>
    <comment_count>6</comment_count>
      <attachid>124877</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-02-01 15:07:35 -0800</bug_when>
    <thetext>Comment on attachment 124877
Fixes the bug

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

&gt;&gt;&gt;&gt; Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py:205
&gt;&gt;&gt;&gt;          driver = None
&gt;&gt;&gt; 
&gt;&gt;&gt; Should driver be a local variable in the loop?
&gt;&gt; 
&gt;&gt; I think I&apos;m on the same page as Adam here. Why are you creating a driver every time thought the loop? Just create one outside the loop. run_test() should restart it as needed.
&gt; 
&gt; I think that&apos;s the opposite of what Adam is saying. He&apos;s just pointing out the fact driver is declared outside of the loop even though new driver is assigned in every iteration.

driver isn&apos;t declared outside of the loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547408</commentid>
    <comment_count>7</comment_count>
      <attachid>124877</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 15:09:08 -0800</bug_when>
    <thetext>Comment on attachment 124877
Fixes the bug

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

&gt;&gt;&gt;&gt;&gt; Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py:205
&gt;&gt;&gt;&gt;&gt;          driver = None
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Should driver be a local variable in the loop?
&gt;&gt;&gt; 
&gt;&gt;&gt; I think I&apos;m on the same page as Adam here. Why are you creating a driver every time thought the loop? Just create one outside the loop. run_test() should restart it as needed.
&gt;&gt; 
&gt;&gt; I think that&apos;s the opposite of what Adam is saying. He&apos;s just pointing out the fact driver is declared outside of the loop even though new driver is assigned in every iteration.
&gt; 
&gt; driver isn&apos;t declared outside of the loop.

It is. &quot;driver = None&quot; is outside of the for loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547418</commentid>
    <comment_count>8</comment_count>
      <attachid>124877</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-02-01 15:16:12 -0800</bug_when>
    <thetext>Comment on attachment 124877
Fixes the bug

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

Sorry,  I was perhaps unclear. Originally, there was a &apos;driver = None&apos; outside of the loop. You deleted that line (presumably after uploading the patch but before landing it, because it&apos;s still showing in the patch.  

But, you are still calling port.create_driver() every time inside the loop, but that&apos;s unnecessary and perhaps slightly confusing, so I&apos;m suggesting one could pull it out of the loop. This is just nit-picking, though ...

(Perhaps that&apos;s not what Adam was suggesting, though).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547423</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 15:19:55 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 124877 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124877&amp;action=review
&gt; 
&gt; Sorry,  I was perhaps unclear. Originally, there was a &apos;driver = None&apos; outside of the loop. You deleted that line (presumably after uploading the patch but before landing it, because it&apos;s still showing in the patch.  
&gt; 
&gt; But, you are still calling port.create_driver() every time inside the loop, but that&apos;s unnecessary and perhaps slightly confusing, so I&apos;m suggesting one could pull it out of the loop. This is just nit-picking, though ...

Apparently, this patch made some tests more reliable but made others less reliable so I&apos;d have to figure something out :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547515</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 17:28:40 -0800</bug_when>
    <thetext>Re-open the bug since re-starting DRT didn&apos;t fix this problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547527</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-01 17:43:50 -0800</bug_when>
    <thetext>Rolled out the patch in http://trac.webkit.org/changeset/106517.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547722</commentid>
    <comment_count>12</comment_count>
      <attachid>125094</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 00:59:21 -0800</bug_when>
    <thetext>Created attachment 125094
Another attempt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547739</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 01:53:54 -0800</bug_when>
    <thetext>Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547750</commentid>
    <comment_count>14</comment_count>
      <attachid>125094</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 02:24:34 -0800</bug_when>
    <thetext>Comment on attachment 125094
Another attempt

Clearing flags on attachment: 125094

Committed r106543: &lt;http://trac.webkit.org/changeset/106543&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547751</commentid>
    <comment_count>15</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 02:24:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548074</commentid>
    <comment_count>16</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 12:50:32 -0800</bug_when>
    <thetext>:( r106543 made tests less stable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>559059</commentid>
    <comment_count>17</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-17 02:15:01 -0800</bug_when>
    <thetext>It appears that killing the stale clang instance made this problem go away.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124877</attachid>
            <date>2012-01-31 20:29:02 -0800</date>
            <delta_ts>2012-02-02 00:59:18 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-77506-20120131202900.patch</filename>
            <type>text/plain</type>
            <size>9065</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDEwNjQyNikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDMwIEBACisyMDEyLTAxLTMxICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIHJ1bi1wZXJmLXRlc3RzIHNob3VsZCByZXN0YXJ0IERSVCBmb3IgZWFjaCB0ZXN0
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NzUwNgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFsd2F5cyBy
ZXN0YXJ0IERSVCB3aGVuIHJ1bm5pbmcgcGVyZm9ybWFuY2UgdGVzdHMgaW4gb3JkZXIgdG8gbWlu
aW1pemUgdGhlIGRlcGVuZGVuY3kgYmV0d2VlbiB0ZXN0cy4KKworICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHk6CisgICAgICAgIChDaHJvbWl1
bURyaXZlci5zdG9wKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rl
c3RzL3BlcmZ0ZXN0c3J1bm5lci5weToKKyAgICAgICAgKFBlcmZUZXN0c1J1bm5lci5fcnVuX3Rl
c3RzX3NldCk6CisgICAgICAgIChQZXJmVGVzdHNSdW5uZXIuX3J1bl9zaW5nbGVfdGVzdCk6Cisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5u
ZXJfdW5pdHRlc3QucHk6CisgICAgICAgIChjcmVhdGVfcnVubmVyKToKKyAgICAgICAgKHRlc3Rf
cnVuX3Bhc3NpbmdfdGVzdCk6CisgICAgICAgICh0ZXN0X3J1bl9zaWxlbnRfdGVzdCk6CisgICAg
ICAgICh0ZXN0X3J1bl9mYWlsZWRfdGVzdCk6CisgICAgICAgICh0ZXN0X3J1bl90b25ndWV5X3Rl
c3QpOgorICAgICAgICAodGVzdF9ydW5fdGltZW91dF90ZXN0KToKKyAgICAgICAgKHRlc3RfcnVu
X2NyYXNoX3Rlc3QpOgorICAgICAgICAodGVzdF9ydW5fdGVzdF9zZXRfa2lsbHNfZHJ0X3Blcl9y
dW4pOgorICAgICAgICAodGVzdF9ydW5fdGVzdF9zZXRfa2lsbHNfZHJ0X3Blcl9ydW4uVGVzdERy
aXZlcldpdGhTdG9wQ291bnQpOgorICAgICAgICAodGVzdF9ydW5fdGVzdF9zZXRfa2lsbHNfZHJ0
X3Blcl9ydW4uVGVzdERyaXZlcldpdGhTdG9wQ291bnQuX19pbml0X18pOgorICAgICAgICAodGVz
dF9ydW5fdGVzdF9zZXRfa2lsbHNfZHJ0X3Blcl9ydW4uVGVzdERyaXZlcldpdGhTdG9wQ291bnQu
c3RvcCk6CisKIDIwMTItMDEtMzEgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+
CiAKICAgICAgICAgUkVHUkVTU0lPTiAoV2ViS2l0Mik6IGV2ZW50LmtleUNvZGUgaXMgYWx3YXlz
IHplcm8gd2hlbiB0eXBpbmcgaW4gUnVzc2lhbgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5CShyZXZpc2lvbiAxMDY0
MDgpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC02MDMsNyArNjAzLDggQEAgY2xhc3MgQ2hyb21pdW1Ecml2
ZXIoRHJpdmVyKToKICAgICAgICAgaWYgc2VsZi5fcHJvYy5zdGRlcnI6CiAgICAgICAgICAgICBz
ZWxmLl9wcm9jLnN0ZGVyci5jbG9zZSgpCiAgICAgICAgIHRpbWVfb3V0X21zID0gc2VsZi5fcG9y
dC5nZXRfb3B0aW9uKCd0aW1lX291dF9tcycpCi0gICAgICAgIGlmIHRpbWVfb3V0X21zOgorICAg
ICAgICBpZiB0aW1lX291dF9tcyBhbmQgbm90IHNlbGYuX25vX3RpbWVvdXQ6CisgICAgICAgICAg
ICAjIEZJWE1FOiBQb3J0IG9iamVjdCBzaG91bGRuJ3QgYmUgZGVwZW5kZW50IG9uIGxheW91dCB0
ZXN0IG1hbmFnZXIuCiAgICAgICAgICAgICBraWxsX3RpbWVvdXRfc2Vjb25kcyA9IDMuMCAqIGlu
dCh0aW1lX291dF9tcykgLyBNYW5hZ2VyLkRFRkFVTFRfVEVTVF9USU1FT1VUX01TCiAgICAgICAg
IGVsc2U6CiAgICAgICAgICAgICBraWxsX3RpbWVvdXRfc2Vjb25kcyA9IDMuMApJbmRleDogVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXIucHkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9w
ZXJmdGVzdHNydW5uZXIucHkJKHJldmlzaW9uIDEwNjQwOSkKKysrIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvcGVyZm9ybWFuY2VfdGVzdHMvcGVyZnRlc3RzcnVubmVyLnB5CSh3b3JraW5nIGNvcHkp
CkBAIC0yMDIsMzAgKzIwMiwyMiBAQCBjbGFzcyBQZXJmVGVzdHNSdW5uZXIob2JqZWN0KToKICAg
ICAgICAgcmVzdWx0X2NvdW50ID0gbGVuKHRlc3RzKQogICAgICAgICBleHBlY3RlZCA9IDAKICAg
ICAgICAgdW5leHBlY3RlZCA9IDAKLSAgICAgICAgZHJpdmVyX25lZWRfcmVzdGFydCA9IEZhbHNl
CiAgICAgICAgIGRyaXZlciA9IE5vbmUKIAogICAgICAgICBmb3IgdGVzdCBpbiB0ZXN0czoKLSAg
ICAgICAgICAgIGlmIGRyaXZlcl9uZWVkX3Jlc3RhcnQ6Ci0gICAgICAgICAgICAgICAgX2xvZy5l
cnJvcigiJXMga2lsbGluZyBkcml2ZXIiICUgdGVzdCkKLSAgICAgICAgICAgICAgICBkcml2ZXIu
c3RvcCgpCi0gICAgICAgICAgICAgICAgZHJpdmVyID0gTm9uZQotICAgICAgICAgICAgaWYgbm90
IGRyaXZlcjoKLSAgICAgICAgICAgICAgICBkcml2ZXIgPSBwb3J0LmNyZWF0ZV9kcml2ZXIod29y
a2VyX251bWJlcj0xLCBub190aW1lb3V0PVRydWUpCisgICAgICAgICAgICBkcml2ZXIgPSBwb3J0
LmNyZWF0ZV9kcml2ZXIod29ya2VyX251bWJlcj0xLCBub190aW1lb3V0PVRydWUpCiAKICAgICAg
ICAgICAgIHJlbGF0aXZlX3Rlc3RfcGF0aCA9IHNlbGYuX2hvc3QuZmlsZXN5c3RlbS5yZWxwYXRo
KHRlc3QsIHNlbGYuX2Jhc2VfcGF0aCkKICAgICAgICAgICAgIHNlbGYuX3ByaW50ZXIud3JpdGUo
J1J1bm5pbmcgJXMgKCVkIG9mICVkKScgJSAocmVsYXRpdmVfdGVzdF9wYXRoLCBleHBlY3RlZCAr
IHVuZXhwZWN0ZWQgKyAxLCBsZW4odGVzdHMpKSkKIAogICAgICAgICAgICAgaXNfY2hyb21pdW1f
c3R5bGUgPSBzZWxmLl9ob3N0LmZpbGVzeXN0ZW0uc3BsaXQocmVsYXRpdmVfdGVzdF9wYXRoKVsw
XSBpbiBzZWxmLl90ZXN0X2RpcmVjdG9yaWVzX2Zvcl9jaHJvbWl1bV9zdHlsZV90ZXN0cwotICAg
ICAgICAgICAgdGVzdF9mYWlsZWQsIGRyaXZlcl9uZWVkX3Jlc3RhcnQgPSBzZWxmLl9ydW5fc2lu
Z2xlX3Rlc3QodGVzdCwgZHJpdmVyLCBpc19jaHJvbWl1bV9zdHlsZSkKLSAgICAgICAgICAgIGlm
IHRlc3RfZmFpbGVkOgotICAgICAgICAgICAgICAgIHVuZXhwZWN0ZWQgPSB1bmV4cGVjdGVkICsg
MQotICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHNlbGYuX3J1bl9zaW5nbGVfdGVz
dCh0ZXN0LCBkcml2ZXIsIGlzX2Nocm9taXVtX3N0eWxlKToKICAgICAgICAgICAgICAgICBleHBl
Y3RlZCA9IGV4cGVjdGVkICsgMQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB1
bmV4cGVjdGVkID0gdW5leHBlY3RlZCArIDEKIAogICAgICAgICAgICAgc2VsZi5fcHJpbnRlci53
cml0ZSgnJykKIAotICAgICAgICBpZiBkcml2ZXI6CiAgICAgICAgICAgICBkcml2ZXIuc3RvcCgp
CiAKICAgICAgICAgcmV0dXJuIHVuZXhwZWN0ZWQKQEAgLTI5MCw3ICsyODIsNiBAQCBjbGFzcyBQ
ZXJmVGVzdHNSdW5uZXIob2JqZWN0KToKIAogICAgIGRlZiBfcnVuX3NpbmdsZV90ZXN0KHNlbGYs
IHRlc3QsIGRyaXZlciwgaXNfY2hyb21pdW1fc3R5bGUpOgogICAgICAgICB0ZXN0X2ZhaWxlZCA9
IEZhbHNlCi0gICAgICAgIGRyaXZlcl9uZWVkX3Jlc3RhcnQgPSBGYWxzZQogICAgICAgICBvdXRw
dXQgPSBkcml2ZXIucnVuX3Rlc3QoRHJpdmVySW5wdXQodGVzdCwgc2VsZi5fb3B0aW9ucy50aW1l
X291dF9tcywgTm9uZSwgRmFsc2UpKQogCiAgICAgICAgIGlmIG91dHB1dC50ZXh0ID09IE5vbmU6
CkBAIC0yOTgsMTAgKzI4OSw4IEBAIGNsYXNzIFBlcmZUZXN0c1J1bm5lcihvYmplY3QpOgogICAg
ICAgICBlbGlmIG91dHB1dC50aW1lb3V0OgogICAgICAgICAgICAgc2VsZi5fcHJpbnRlci53cml0
ZSgndGltZW91dDogJXMnICUgdGVzdFtzZWxmLl93ZWJraXRfYmFzZV9kaXJfbGVuICsgMTpdKQog
ICAgICAgICAgICAgdGVzdF9mYWlsZWQgPSBUcnVlCi0gICAgICAgICAgICBkcml2ZXJfbmVlZF9y
ZXN0YXJ0ID0gVHJ1ZQogICAgICAgICBlbGlmIG91dHB1dC5jcmFzaDoKICAgICAgICAgICAgIHNl
bGYuX3ByaW50ZXIud3JpdGUoJ2NyYXNoOiAlcycgJSB0ZXN0W3NlbGYuX3dlYmtpdF9iYXNlX2Rp
cl9sZW4gKyAxOl0pCi0gICAgICAgICAgICBkcml2ZXJfbmVlZF9yZXN0YXJ0ID0gVHJ1ZQogICAg
ICAgICAgICAgdGVzdF9mYWlsZWQgPSBUcnVlCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBp
ZiBpc19jaHJvbWl1bV9zdHlsZToKQEAgLTMxNiw0ICszMDUsNCBAQCBjbGFzcyBQZXJmVGVzdHNS
dW5uZXIob2JqZWN0KToKICAgICAgICAgaWYgdGVzdF9mYWlsZWQ6CiAgICAgICAgICAgICBzZWxm
Ll9wcmludGVyLndyaXRlKCdGQUlMRUQnKQogCi0gICAgICAgIHJldHVybiB0ZXN0X2ZhaWxlZCwg
ZHJpdmVyX25lZWRfcmVzdGFydAorICAgICAgICByZXR1cm4gbm90IHRlc3RfZmFpbGVkCkluZGV4
OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5l
cl91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZv
cm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5lcl91bml0dGVzdC5weQkocmV2aXNpb24gMTA2NDA4
KQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNy
dW5uZXJfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTEwNCwxMyArMTA0LDEzIEBAIG1h
eCAxMTIwCiAgICAgICAgIGRlZiBzdG9wKHNlbGYpOgogICAgICAgICAgICAgIiIiZG8gbm90aGlu
ZyIiIgogCi0gICAgZGVmIGNyZWF0ZV9ydW5uZXIoc2VsZiwgYnVpbGRib3Rfb3V0cHV0PU5vbmUs
IGFyZ3M9W10sIHJlZ3VsYXJfb3V0cHV0PU5vbmUpOgorICAgIGRlZiBjcmVhdGVfcnVubmVyKHNl
bGYsIGJ1aWxkYm90X291dHB1dD1Ob25lLCBhcmdzPVtdLCByZWd1bGFyX291dHB1dD1Ob25lLCBk
cml2ZXJfY2xhc3M9VGVzdERyaXZlcik6CiAgICAgICAgIGJ1aWxkYm90X291dHB1dCA9IGJ1aWxk
Ym90X291dHB1dCBvciBhcnJheV9zdHJlYW0uQXJyYXlTdHJlYW0oKQogICAgICAgICByZWd1bGFy
X291dHB1dCA9IHJlZ3VsYXJfb3V0cHV0IG9yIGFycmF5X3N0cmVhbS5BcnJheVN0cmVhbSgpCiAK
ICAgICAgICAgb3B0aW9ucywgcGFyc2VkX2FyZ3MgPSBQZXJmVGVzdHNSdW5uZXIuX3BhcnNlX2Fy
Z3MoYXJncykKICAgICAgICAgdGVzdF9wb3J0ID0gVGVzdFBvcnQoaG9zdD1Nb2NrSG9zdCgpLCBv
cHRpb25zPW9wdGlvbnMpCi0gICAgICAgIHRlc3RfcG9ydC5jcmVhdGVfZHJpdmVyID0gbGFtYmRh
IHdvcmtlcl9udW1iZXI9Tm9uZSwgbm9fdGltZW91dD1GYWxzZTogTWFpblRlc3QuVGVzdERyaXZl
cigpCisgICAgICAgIHRlc3RfcG9ydC5jcmVhdGVfZHJpdmVyID0gbGFtYmRhIHdvcmtlcl9udW1i
ZXI9Tm9uZSwgbm9fdGltZW91dD1GYWxzZTogZHJpdmVyX2NsYXNzKCkKIAogICAgICAgICBydW5u
ZXIgPSBQZXJmVGVzdHNSdW5uZXIocmVndWxhcl9vdXRwdXQsIGJ1aWxkYm90X291dHB1dCwgYXJn
cz1hcmdzLCBwb3J0PXRlc3RfcG9ydCkKICAgICAgICAgcnVubmVyLl9ob3N0LmZpbGVzeXN0ZW0u
bWF5YmVfbWFrZV9kaXJlY3RvcnkocnVubmVyLl9iYXNlX3BhdGgsICdpbnNwZWN0b3InKQpAQCAt
MTI0LDM0ICsxMjQsMjIgQEAgbWF4IDExMjAKICAgICAgICAgcmV0dXJuIHJ1bm5lci5fcnVuX3Np
bmdsZV90ZXN0KHRlc3RfbmFtZSwgZHJpdmVyLCBpc19jaHJvbWl1bV9zdHlsZT1UcnVlKQogCiAg
ICAgZGVmIHRlc3RfcnVuX3Bhc3NpbmdfdGVzdChzZWxmKToKLSAgICAgICAgdGVzdF9mYWlsZWQs
IGRyaXZlcl9uZWVkX3Jlc3RhcnQgPSBzZWxmLnJ1bl90ZXN0KCdwYXNzLmh0bWwnKQotICAgICAg
ICBzZWxmLmFzc2VydEZhbHNlKHRlc3RfZmFpbGVkKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNl
KGRyaXZlcl9uZWVkX3Jlc3RhcnQpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLnJ1bl90
ZXN0KCdwYXNzLmh0bWwnKSkKIAogICAgIGRlZiB0ZXN0X3J1bl9zaWxlbnRfdGVzdChzZWxmKToK
LSAgICAgICAgdGVzdF9mYWlsZWQsIGRyaXZlcl9uZWVkX3Jlc3RhcnQgPSBzZWxmLnJ1bl90ZXN0
KCdzaWxlbnQuaHRtbCcpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh0ZXN0X2ZhaWxlZCkKLSAg
ICAgICAgc2VsZi5hc3NlcnRGYWxzZShkcml2ZXJfbmVlZF9yZXN0YXJ0KQorICAgICAgICBzZWxm
LmFzc2VydEZhbHNlKHNlbGYucnVuX3Rlc3QoJ3NpbGVudC5odG1sJykpCiAKICAgICBkZWYgdGVz
dF9ydW5fZmFpbGVkX3Rlc3Qoc2VsZik6Ci0gICAgICAgIHRlc3RfZmFpbGVkLCBkcml2ZXJfbmVl
ZF9yZXN0YXJ0ID0gc2VsZi5ydW5fdGVzdCgnZmFpbGVkLmh0bWwnKQotICAgICAgICBzZWxmLmFz
c2VydFRydWUodGVzdF9mYWlsZWQpCi0gICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZHJpdmVyX25l
ZWRfcmVzdGFydCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzZWxmLnJ1bl90ZXN0KCdmYWls
ZWQuaHRtbCcpKQogCiAgICAgZGVmIHRlc3RfcnVuX3Rvbmd1ZXlfdGVzdChzZWxmKToKLSAgICAg
ICAgdGVzdF9mYWlsZWQsIGRyaXZlcl9uZWVkX3Jlc3RhcnQgPSBzZWxmLnJ1bl90ZXN0KCd0b25n
dWV5Lmh0bWwnKQotICAgICAgICBzZWxmLmFzc2VydFRydWUodGVzdF9mYWlsZWQpCi0gICAgICAg
IHNlbGYuYXNzZXJ0RmFsc2UoZHJpdmVyX25lZWRfcmVzdGFydCkKKyAgICAgICAgc2VsZi5hc3Nl
cnRGYWxzZShzZWxmLnJ1bl90ZXN0KCd0b25ndWV5Lmh0bWwnKSkKIAogICAgIGRlZiB0ZXN0X3J1
bl90aW1lb3V0X3Rlc3Qoc2VsZik6Ci0gICAgICAgIHRlc3RfZmFpbGVkLCBkcml2ZXJfbmVlZF9y
ZXN0YXJ0ID0gc2VsZi5ydW5fdGVzdCgndGltZW91dC5odG1sJykKLSAgICAgICAgc2VsZi5hc3Nl
cnRUcnVlKHRlc3RfZmFpbGVkKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoZHJpdmVyX25lZWRf
cmVzdGFydCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzZWxmLnJ1bl90ZXN0KCd0aW1lb3V0
Lmh0bWwnKSkKIAogICAgIGRlZiB0ZXN0X3J1bl9jcmFzaF90ZXN0KHNlbGYpOgotICAgICAgICB0
ZXN0X2ZhaWxlZCwgZHJpdmVyX25lZWRfcmVzdGFydCA9IHNlbGYucnVuX3Rlc3QoJ2NyYXNoLmh0
bWwnKQotICAgICAgICBzZWxmLmFzc2VydFRydWUodGVzdF9mYWlsZWQpCi0gICAgICAgIHNlbGYu
YXNzZXJ0VHJ1ZShkcml2ZXJfbmVlZF9yZXN0YXJ0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNl
KHNlbGYucnVuX3Rlc3QoJ2NyYXNoLmh0bWwnKSkKIAogICAgIGRlZiB0ZXN0X3J1bl90ZXN0X3Nl
dChzZWxmKToKICAgICAgICAgYnVpbGRib3Rfb3V0cHV0ID0gYXJyYXlfc3RyZWFtLkFycmF5U3Ry
ZWFtKCkKQEAgLTE2NCw2ICsxNTIsMjcgQEAgbWF4IDExMjAKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChsZW4oYnVpbGRib3Rfb3V0cHV0LmdldCgpKSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChidWlsZGJvdF9vdXRwdXQuZ2V0KClbMF0sICdSRVNVTFQgZ3JvdXBfbmFtZTogdGVzdF9u
YW1lPSA0MiBtc1xuJykKIAorICAgIGRlZiB0ZXN0X3J1bl90ZXN0X3NldF9raWxsc19kcnRfcGVy
X3J1bihzZWxmKToKKworICAgICAgICBjbGFzcyBUZXN0RHJpdmVyV2l0aFN0b3BDb3VudChNYWlu
VGVzdC5UZXN0RHJpdmVyKToKKyAgICAgICAgICAgIHN0b3BfY291bnQgPSAwCisKKyAgICAgICAg
ICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBUZXN0RHJpdmVyV2l0aFN0
b3BDb3VudC5zb3RwX2NvdW50ID0gMAorCisgICAgICAgICAgICBkZWYgc3RvcChzZWxmKToKKyAg
ICAgICAgICAgICAgICBUZXN0RHJpdmVyV2l0aFN0b3BDb3VudC5zdG9wX2NvdW50ICs9IDEKKwor
ICAgICAgICBidWlsZGJvdF9vdXRwdXQgPSBhcnJheV9zdHJlYW0uQXJyYXlTdHJlYW0oKQorICAg
ICAgICBydW5uZXIgPSBzZWxmLmNyZWF0ZV9ydW5uZXIoYnVpbGRib3Rfb3V0cHV0LCBkcml2ZXJf
Y2xhc3M9VGVzdERyaXZlcldpdGhTdG9wQ291bnQpCisKKyAgICAgICAgZGlybmFtZSA9IHJ1bm5l
ci5fYmFzZV9wYXRoICsgJy9pbnNwZWN0b3IvJworICAgICAgICB0ZXN0cyA9IFtkaXJuYW1lICsg
J3Bhc3MuaHRtbCcsIGRpcm5hbWUgKyAnc2lsZW50Lmh0bWwnLCBkaXJuYW1lICsgJ2ZhaWxlZC5o
dG1sJywKKyAgICAgICAgICAgIGRpcm5hbWUgKyAndG9uZ3VleS5odG1sJywgZGlybmFtZSArICd0
aW1lb3V0Lmh0bWwnLCBkaXJuYW1lICsgJ2NyYXNoLmh0bWwnXQorCisgICAgICAgIHVuZXhwZWN0
ZWRfcmVzdWx0X2NvdW50ID0gcnVubmVyLl9ydW5fdGVzdHNfc2V0KHRlc3RzLCBydW5uZXIuX3Bv
cnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVGVzdERyaXZlcldpdGhTdG9wQ291bnQuc3Rv
cF9jb3VudCwgNikKKwogICAgIGRlZiB0ZXN0X3J1bl90ZXN0X3NldF9mb3JfcGFyc2VyX3Rlc3Rz
KHNlbGYpOgogICAgICAgICBidWlsZGJvdF9vdXRwdXQgPSBhcnJheV9zdHJlYW0uQXJyYXlTdHJl
YW0oKQogICAgICAgICBydW5uZXIgPSBzZWxmLmNyZWF0ZV9ydW5uZXIoYnVpbGRib3Rfb3V0cHV0
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125094</attachid>
            <date>2012-02-02 00:59:21 -0800</date>
            <delta_ts>2012-02-02 02:24:34 -0800</delta_ts>
            <desc>Another attempt</desc>
            <filename>bug-77506-20120202005920.patch</filename>
            <type>text/plain</type>
            <size>6241</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFBlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFBlcmZvcm1h
bmNlVGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMDY1NDApCisrKyBQZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDEyLTAyLTAyICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFtQZXJmb3JtYW5jZVRl
c3RzXSB0ZXN0cyBoYXZlIGRlcGVuZGVuY2llcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzc1MDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHJlc291cmNlcy9pbml0Lmh0bWw6IEFkZGVkLgorCiAyMDEy
LTAyLTAxICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBh
ZnRlciByMTA2Mzg2LiBUaGUgZW1wdHkgYW5jaG9yIGVsZW1lbnQgd2FzIGdlbmVyYXRpbmcgYW4g
ZXJyb25lb3VzIHdoaXRlc3BhY2UuCkluZGV4OiBQZXJmb3JtYW5jZVRlc3RzL3Jlc291cmNlcy9p
bml0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gUGVyZm9ybWFuY2VUZXN0cy9yZXNvdXJjZXMvaW5pdC5o
dG1sCShyZXZpc2lvbiAwKQorKysgUGVyZm9ybWFuY2VUZXN0cy9yZXNvdXJjZXMvaW5pdC5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGJvZHk+Cis8cD5UaGlzIGZpbGUgaXMgdXNlZCBieSBydW4tcGVyZi10ZXN0cyBiZXR3ZWVuIGVh
Y2ggdGVzdCB0byBtYXJnaW5hbGl6ZSB0aGUgZGVwZW5kZW5jeSBiZXR3ZWVuIHRlc3RzLgorVGhp
cyBmaWxlIGlzIG5vdCBpbnRlbmRlZCB0byBiZSBvcGVuZWQgb24gYSBicm93c2VyLjwvcD4KKzxz
Y3JpcHQ+CisKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBHQ0NvbnRy
b2xsZXIuY29sbGVjdCgpOworICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsK
KyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAgLy8gR2l2ZSA1
IHNlY29uZHMgdG8gY2xlYW51cCB0aGUgbWVzcyB0aGUgbGFzdCBwYWdlIGxlZnQuCisgICAgc2V0
VGltZW91dChmdW5jdGlvbiAoKSB7IGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsg
fSwgNTAwMCk7CisgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigncCcpLmlubmVySFRNTCA9ICdQ
QVNTJzsKK30KKworCis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IFRvb2xzL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNjU0MCkK
KysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEy
LTAyLTAyICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFtQZXJm
b3JtYW5jZVRlc3RzXSB0ZXN0cyBoYXZlIGRlcGVuZGVuY2llcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzc1MDYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMb2FkIGFuIGluaXRpYWxpemF0aW9uIHBhZ2Ug
YmVmb3JlIGVhY2ggdGVzdCBhZnRlciBzdGFydGluZyBhIERSVCBzbyB0aGF0CisgICAgICAgIHdh
cm1pbmcgdXAgRFJUIHdvbid0IGFmZmVjdCB0aGUgcGVyZm9ybWFuY2UgdGVzdCByZXN1bHRzLgor
CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNy
dW5uZXIucHk6CisgICAgICAgIChQZXJmVGVzdHNSdW5uZXIpOgorICAgICAgICAoUGVyZlRlc3Rz
UnVubmVyLl9faW5pdF9fKToKKyAgICAgICAgKFBlcmZUZXN0c1J1bm5lci5fcnVuX3Rlc3RzX3Nl
dCk6CisgICAgICAgIChQZXJmVGVzdHNSdW5uZXIuX3J1bl9zaW5nbGVfdGVzdCk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXJfdW5p
dHRlc3QucHk6CisgICAgICAgIChNYWluVGVzdC5UZXN0RHJpdmVyLnJ1bl90ZXN0KToKKyAgICAg
ICAgKHRlc3RfaW5pdGlhbF9wYWdlX2xvYWRlZCk6CisgICAgICAgICh0ZXN0X2luaXRpYWxfcGFn
ZV9sb2FkZWQucnVuX3Rlc3QpOgorCiAyMDEyLTAyLTAyICBSeW9zdWtlIE5pd2EgIDxybml3YUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJlLWxhbmQgcjEwNjQ0MiBwZXIgQWRhbSdzIHN1Z2dlc3Rp
b24uIFdlJ2xsIGRvIGJvdGggcmVzdGFydGluZyBEUlQgYW5kIGxvYWRpbmcgYSBmYWtlIHRlc3Qg
Zmlyc3QuCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rlc3RzL3Bl
cmZ0ZXN0c3J1bm5lci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Bl
cmZvcm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5lci5weQkocmV2aXNpb24gMTA2NTQwKQorKysg
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXIu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAgX2xvZyA9IGxvZ2dpbmcuZ2V0TG9n
Z2VyKF9fbmFtZV9fKQogCiBjbGFzcyBQZXJmVGVzdHNSdW5uZXIob2JqZWN0KToKICAgICBfcGVy
Zl90ZXN0c19iYXNlX2RpciA9ICdQZXJmb3JtYW5jZVRlc3RzJworICAgIF9pbml0aWFsX3BhZ2Vf
cmVsYXRpdmVfcGF0aCA9ICdyZXNvdXJjZXMvaW5pdC5odG1sJwogICAgIF90ZXN0X2RpcmVjdG9y
aWVzX2Zvcl9jaHJvbWl1bV9zdHlsZV90ZXN0cyA9IFsnaW5zcGVjdG9yJ10KICAgICBfZGVmYXVs
dF9icmFuY2ggPSAnd2Via2l0LXRydW5rJwogICAgIF9FWElUX0NPREVfQkFEX0JVSUxEID0gLTEK
QEAgLTY2LDYgKzY3LDcgQEAgY2xhc3MgUGVyZlRlc3RzUnVubmVyKG9iamVjdCk6CiAgICAgICAg
IHNlbGYuX3ByaW50ZXIgPSBwcmludGluZy5QcmludGVyKHNlbGYuX3BvcnQsIHNlbGYuX29wdGlv
bnMsIHJlZ3VsYXJfb3V0cHV0LCBidWlsZGJvdF9vdXRwdXQsIGNvbmZpZ3VyZV9sb2dnaW5nPUZh
bHNlKQogICAgICAgICBzZWxmLl93ZWJraXRfYmFzZV9kaXJfbGVuID0gbGVuKHNlbGYuX3BvcnQu
d2Via2l0X2Jhc2UoKSkKICAgICAgICAgc2VsZi5fYmFzZV9wYXRoID0gc2VsZi5fcG9ydC5wZXJm
X3Rlc3RzX2RpcigpCisgICAgICAgIHNlbGYuX2luaXRpYWxfcGFnZV9wYXRoID0gc2VsZi5faG9z
dC5maWxlc3lzdGVtLmpvaW4oc2VsZi5fYmFzZV9wYXRoLCBzZWxmLl9pbml0aWFsX3BhZ2VfcmVs
YXRpdmVfcGF0aCkKICAgICAgICAgc2VsZi5fcmVzdWx0cyA9IHt9CiAgICAgICAgIHNlbGYuX3Rp
bWVzdGFtcCA9IHRpbWUudGltZSgpCiAKQEAgLTIwMiw3ICsyMDQsNiBAQCBjbGFzcyBQZXJmVGVz
dHNSdW5uZXIob2JqZWN0KToKICAgICAgICAgcmVzdWx0X2NvdW50ID0gbGVuKHRlc3RzKQogICAg
ICAgICBleHBlY3RlZCA9IDAKICAgICAgICAgdW5leHBlY3RlZCA9IDAKLSAgICAgICAgZHJpdmVy
ID0gTm9uZQogCiAgICAgICAgIGZvciB0ZXN0IGluIHRlc3RzOgogICAgICAgICAgICAgZHJpdmVy
ID0gcG9ydC5jcmVhdGVfZHJpdmVyKHdvcmtlcl9udW1iZXI9MSwgbm9fdGltZW91dD1UcnVlKQpA
QCAtMjgyLDYgKzI4Myw5IEBAIGNsYXNzIFBlcmZUZXN0c1J1bm5lcihvYmplY3QpOgogCiAgICAg
ZGVmIF9ydW5fc2luZ2xlX3Rlc3Qoc2VsZiwgdGVzdCwgZHJpdmVyLCBpc19jaHJvbWl1bV9zdHls
ZSk6CiAgICAgICAgIHRlc3RfZmFpbGVkID0gRmFsc2UKKyAgICAgICAgb3V0cHV0ID0gZHJpdmVy
LnJ1bl90ZXN0KERyaXZlcklucHV0KHNlbGYuX2luaXRpYWxfcGFnZV9wYXRoLCAxMDAwMCwgTm9u
ZSwgRmFsc2UpKQorICAgICAgICBpZiBvdXRwdXQudGV4dCAhPSAnUEFTU1xuJzoKKyAgICAgICAg
ICAgIHNlbGYuX3ByaW50ZXIud3JpdGUoJ0luaXRpYWxpemF0aW9uIHBhZ2UgZmFpbGVkIHRvIGxv
YWQuJykKICAgICAgICAgb3V0cHV0ID0gZHJpdmVyLnJ1bl90ZXN0KERyaXZlcklucHV0KHRlc3Qs
IHNlbGYuX29wdGlvbnMudGltZV9vdXRfbXMsIE5vbmUsIEZhbHNlKSkKIAogICAgICAgICBpZiBv
dXRwdXQudGV4dCA9PSBOb25lOgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3Jt
YW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXJfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXJfdW5p
dHRlc3QucHkJKHJldmlzaW9uIDEwNjU0MCkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcGVy
Zm9ybWFuY2VfdGVzdHMvcGVyZnRlc3RzcnVubmVyX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkp
CkBAIC00OSw3ICs0OSw5IEBAIGNsYXNzIE1haW5UZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAg
ICAgICAgICAgIHRleHQgPSAnJwogICAgICAgICAgICAgdGltZW91dCA9IEZhbHNlCiAgICAgICAg
ICAgICBjcmFzaCA9IEZhbHNlCi0gICAgICAgICAgICBpZiBkcml2ZXJfaW5wdXQudGVzdF9uYW1l
LmVuZHN3aXRoKCdwYXNzLmh0bWwnKToKKyAgICAgICAgICAgIGlmIGRyaXZlcl9pbnB1dC50ZXN0
X25hbWUuZW5kc3dpdGgoJ2luaXQuaHRtbCcpOgorICAgICAgICAgICAgICAgIHRleHQgPSAnUEFT
U1xuJworICAgICAgICAgICAgZWxpZiBkcml2ZXJfaW5wdXQudGVzdF9uYW1lLmVuZHN3aXRoKCdw
YXNzLmh0bWwnKToKICAgICAgICAgICAgICAgICB0ZXh0ID0gJ1JFU1VMVCBncm91cF9uYW1lOiB0
ZXN0X25hbWU9IDQyIG1zJwogICAgICAgICAgICAgZWxpZiBkcml2ZXJfaW5wdXQudGVzdF9uYW1l
LmVuZHN3aXRoKCd0aW1lb3V0Lmh0bWwnKToKICAgICAgICAgICAgICAgICB0aW1lb3V0ID0gVHJ1
ZQpAQCAtMTIzLDYgKzEyNSwyNCBAQCBtYXggMTEyMAogICAgICAgICBkcml2ZXIgPSBNYWluVGVz
dC5UZXN0RHJpdmVyKCkKICAgICAgICAgcmV0dXJuIHJ1bm5lci5fcnVuX3NpbmdsZV90ZXN0KHRl
c3RfbmFtZSwgZHJpdmVyLCBpc19jaHJvbWl1bV9zdHlsZT1UcnVlKQogCisgICAgZGVmIHRlc3Rf
aW5pdGlhbF9wYWdlX2xvYWRlZChzZWxmKToKKyAgICAgICAgcnVubmVyID0gc2VsZi5jcmVhdGVf
cnVubmVyKCkKKyAgICAgICAgZHJpdmVyID0gTWFpblRlc3QuVGVzdERyaXZlcigpCisgICAgICAg
IGlucHV0cyA9IFtdCisKKyAgICAgICAgZGVmIHJ1bl90ZXN0KGlucHV0KToKKyAgICAgICAgICAg
IGlucHV0cy5hcHBlbmQoaW5wdXQpCisgICAgICAgICAgICBpZiBpbnB1dC50ZXN0X25hbWUuZW5k
c3dpdGgoJ2luaXQuaHRtbCcpOgorICAgICAgICAgICAgICAgIHJldHVybiBEcml2ZXJPdXRwdXQo
J1BBU1NcbicsICdpbWFnZSBvdXRwdXQnLCAnc29tZSBoYXNoJywgTm9uZSkKKyAgICAgICAgICAg
IGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIERyaXZlck91dHB1dCgnUkVTVUxUIGdyb3Vw
X25hbWU6IHRlc3RfbmFtZT0gNDIgbXNcbicsICdpbWFnZSBvdXRwdXQnLCAnc29tZSBoYXNoJywg
Tm9uZSkKKworICAgICAgICBkcml2ZXIucnVuX3Rlc3QgPSBydW5fdGVzdAorICAgICAgICBzZWxm
LmFzc2VydFRydWUocnVubmVyLl9ydW5fc2luZ2xlX3Rlc3QoJ3Bhc3MuaHRtbCcsIGRyaXZlciwg
aXNfY2hyb21pdW1fc3R5bGU9VHJ1ZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGlu
cHV0cyksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaW5wdXRzWzBdLnRlc3RfbmFtZSwg
cnVubmVyLl9iYXNlX3BhdGggKyAnL3Jlc291cmNlcy9pbml0Lmh0bWwnKQorICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKGlucHV0c1sxXS50ZXN0X25hbWUsICdwYXNzLmh0bWwnKQorCiAgICAgZGVm
IHRlc3RfcnVuX3Bhc3NpbmdfdGVzdChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNl
bGYucnVuX3Rlc3QoJ3Bhc3MuaHRtbCcpKQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>