<?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>77059</bug_id>
          
          <creation_ts>2012-01-25 16:48:55 -0800</creation_ts>
          <short_desc>Parsing test_expecations.txt + Skipped lists takes too long</short_desc>
          <delta_ts>2012-01-30 15:16:31 -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>New Bugs</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>77142</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Ojan Vafai">ojan</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>542769</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-25 16:48:55 -0800</bug_when>
    <thetext>Parsing test_expecations.txt + Skipped lists takes too long</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>542771</commentid>
    <comment_count>1</comment_count>
      <attachid>124035</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-25 16:50:50 -0800</bug_when>
    <thetext>Created attachment 124035
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>542779</commentid>
    <comment_count>2</comment_count>
      <attachid>124035</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-01-25 16:59:25 -0800</bug_when>
    <thetext>Comment on attachment 124035
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py:855
&gt; +        for test in self._parser.parse_skipped_tests(tests_to_skip):

Nit: I would iterate directly over tests_to_skip here and change parse_skipped_tests to something like expectation_for_skipped_test(index, test). 

Looks fine otherwise. I&apos;m a bit surprised it&apos;s this slow, but there is so much python-level path handling in the code that I&apos;m not that surprised. You should see how slow the MockFileSystem makes the unit tests :).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>543444</commentid>
    <comment_count>3</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-26 13:46:55 -0800</bug_when>
    <thetext>Committed r106038: &lt;http://trac.webkit.org/changeset/106038&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>543652</commentid>
    <comment_count>4</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-26 16:46:55 -0800</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>543653</commentid>
    <comment_count>5</comment_count>
      <attachid>124215</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-26 16:46:57 -0800</bug_when>
    <thetext>Created attachment 124215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>543654</commentid>
    <comment_count>6</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-01-26 16:47:57 -0800</bug_when>
    <thetext>This was reverted in https://bugs.webkit.org/show_bug.cgi?id=77142. The bug was the we were missing a BUG modifier and were thus getting errors on each line and ignoring them. Fixed this and added a test to verify that we&apos;re actually ending up with the skipped tests expected to be skipped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545468</commentid>
    <comment_count>7</comment_count>
      <attachid>124215</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-30 15:16:26 -0800</bug_when>
    <thetext>Comment on attachment 124215
Patch

Clearing flags on attachment: 124215

Committed r106293: &lt;http://trac.webkit.org/changeset/106293&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545469</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-30 15:16:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124035</attachid>
            <date>2012-01-25 16:50:50 -0800</date>
            <delta_ts>2012-01-26 16:46:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77059-20120125165049.patch</filename>
            <type>text/plain</type>
            <size>8156</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1OTIzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmUzZDhiYzUyNWU0OTI3MmEzNTE3ZDFiNmEwZjAyZTM3
MjNlODkzNi4uYzVlMWNlOGRkYWY5Mjc1ZjQ3ZWExODM2MDEwNTQzYmFkNGZmN2FkNCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMw
IEBACisyMDEyLTAxLTI1ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUGFyc2luZyB0ZXN0X2V4cGVjYXRpb25zLnR4dCArIFNraXBwZWQgbGlzdHMgdGFrZXMgdG9v
IGxvbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3
MDU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBzYXZlcyB+MTAwbXMgb24gdGhlIEFwcGxlIE1hYyBwb3J0LgorICAgICAgICAtbWVtb2l6ZSBh
IGJ1bmNoIG9mIHBhdGggbWV0aG9kcy4KKyAgICAgICAgLUF2b2lkIGRvaW5nIG11bHRpcGxlIGRp
c2sgYWNjZXNzZXMgcGVyIGxpbmUuCisgICAgICAgIC1QYXJzZSB0aGUgc2tpcHBlZCBsaXN0IGRp
cmVjdGx5IGluc3RlYWQgb2YgdHVybmluZyBpdCBpbnRvIGEgdGVzdF9leHBlY2F0aW9ucy50eHQK
KyAgICAgICAgZm9ybWF0dGluZyBzdHJpbmcgYW5kIHBhcnNpbmcgdGhhdC4KKworICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X2V4cGVjdGF0aW9ucy5w
eToKKyAgICAgICAgKFRlc3RFeHBlY3RhdGlvblBhcnNlcik6CisgICAgICAgIChUZXN0RXhwZWN0
YXRpb25QYXJzZXIucGFyc2Vfc2tpcHBlZF90ZXN0cyk6CisgICAgICAgIChUZXN0RXhwZWN0YXRp
b25QYXJzZXIuX3BhcnNlX2xpbmUpOgorICAgICAgICAoVGVzdEV4cGVjdGF0aW9uUGFyc2VyLl9j
b2xsZWN0X21hdGNoaW5nX3Rlc3RzKToKKyAgICAgICAgKFRlc3RFeHBlY3RhdGlvbnMuX19pbml0
X18pOgorICAgICAgICAoVGVzdEV4cGVjdGF0aW9ucy5fYWRkX3NraXBwZWRfdGVzdHMpOgorICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAg
ICAgKFBvcnQpOgorICAgICAgICAoUG9ydC50ZXN0X2lzZmlsZSk6CisgICAgICAgIChQb3J0Lm5v
cm1hbGl6ZV90ZXN0X25hbWUpOgorICAgICAgICAoUG9ydC5sYXlvdXRfdGVzdHNfZGlyKToKKyAg
ICAgICAgKFBvcnQuYWJzcGF0aF9mb3JfdGVzdCk6CisKIDIwMTItMDEtMjUgIEhhamltZSBNb3Jp
dGEgIDxtb3JyaXRhQGdvb2dsZS5jb20+CiAKICAgICAgICAgRU5BQkxFX1NIQURPV19ET00gc2hv
dWxkIGJlIGF2YWlsYWJsZSB2aWEgYnVpbGQtd2Via2l0IC0tc2hhZG93LWRvbQpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfZXhwZWN0
YXRpb25zLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rl
c3RfZXhwZWN0YXRpb25zLnB5CmluZGV4IGNmYTJjY2U4ZTAzYzU4NTRlNWE3MTZjODRhNWQ5M2Ew
YTI3M2M4OGIuLjNiMTZjYzFhZmVhZTFiYTU2MmM0ODdmMWJlYzBlYjQwODcyMzgzNGQgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X2V4
cGVjdGF0aW9ucy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9t
b2RlbHMvdGVzdF9leHBlY3RhdGlvbnMucHkKQEAgLTE4Nyw2ICsxODcsNyBAQCBjbGFzcyBUZXN0
RXhwZWN0YXRpb25QYXJzZXIob2JqZWN0KToKICAgICBCVUdfTU9ESUZJRVJfUFJFRklYID0gJ2J1
ZycKICAgICBCVUdfTU9ESUZJRVJfUkVHRVggPSAnYnVnXGQrJwogICAgIFJFQkFTRUxJTkVfTU9E
SUZJRVIgPSAncmViYXNlbGluZScKKyAgICBGQUlMX0VYUEVDVEFUSU9OID0gJ2ZhaWwnCiAgICAg
U0tJUF9NT0RJRklFUiA9ICdza2lwJwogICAgIFNMT1dfTU9ESUZJRVIgPSAnc2xvdycKICAgICBX
T05URklYX01PRElGSUVSID0gJ3dvbnRmaXgnCkBAIC0yMDUsMTUgKzIwNiwzNCBAQCBjbGFzcyBU
ZXN0RXhwZWN0YXRpb25QYXJzZXIob2JqZWN0KToKICAgICAgICAgICAgIHNlbGYuX3BhcnNlX2xp
bmUoZXhwZWN0YXRpb25fbGluZSkKICAgICAgICAgcmV0dXJuIGV4cGVjdGF0aW9ucwogCisgICAg
ZGVmIHBhcnNlX3NraXBwZWRfdGVzdHMoc2VsZiwgdGVzdF9saXN0KToKKyAgICAgICAgZXhwZWN0
YXRpb25fbGluZXMgPSBbXQorICAgICAgICBmb3IgaW5kZXgsIHRlc3QgaW4gZW51bWVyYXRlKHRl
c3RfbGlzdCk6CisgICAgICAgICAgICBleHBlY3RhdGlvbl9saW5lID0gVGVzdEV4cGVjdGF0aW9u
TGluZSgpCisgICAgICAgICAgICBleHBlY3RhdGlvbl9saW5lLm9yaWdpbmFsX3N0cmluZyA9IHRl
c3QKKyAgICAgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUubGluZV9udW1iZXIgPSBpbmRleAorICAg
ICAgICAgICAgZXhwZWN0YXRpb25fbGluZS5tb2RpZmllcnMgPSBbVGVzdEV4cGVjdGF0aW9uUGFy
c2VyLlNLSVBfTU9ESUZJRVJdCisgICAgICAgICAgICBleHBlY3RhdGlvbl9saW5lLm5hbWUgPSB0
ZXN0CisgICAgICAgICAgICBleHBlY3RhdGlvbl9saW5lLmV4cGVjdGF0aW9ucyA9IFtUZXN0RXhw
ZWN0YXRpb25QYXJzZXIuRkFJTF9FWFBFQ1RBVElPTl0KKyAgICAgICAgICAgIGV4cGVjdGF0aW9u
X2xpbmVzLmFwcGVuZChleHBlY3RhdGlvbl9saW5lKQorICAgICAgICAgICAgc2VsZi5fcGFyc2Vf
bGluZShleHBlY3RhdGlvbl9saW5lKQorICAgICAgICByZXR1cm4gZXhwZWN0YXRpb25fbGluZXMK
KwogICAgIGRlZiBfcGFyc2VfbGluZShzZWxmLCBleHBlY3RhdGlvbl9saW5lKToKICAgICAgICAg
aWYgbm90IGV4cGVjdGF0aW9uX2xpbmUubmFtZToKICAgICAgICAgICAgIHJldHVybgogCiAgICAg
ICAgIHNlbGYuX2NoZWNrX21vZGlmaWVyc19hZ2FpbnN0X2V4cGVjdGF0aW9ucyhleHBlY3RhdGlv
bl9saW5lKQotICAgICAgICBpZiBzZWxmLl9jaGVja19wYXRoX2RvZXNfbm90X2V4aXN0KGV4cGVj
dGF0aW9uX2xpbmUpOgorCisgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUuaXNfZmlsZSA9IHNlbGYu
X3BvcnQudGVzdF9pc2ZpbGUoZXhwZWN0YXRpb25fbGluZS5uYW1lKQorICAgICAgICBpZiBub3Qg
ZXhwZWN0YXRpb25fbGluZS5pc19maWxlIGFuZCBzZWxmLl9jaGVja19wYXRoX2RvZXNfbm90X2V4
aXN0KGV4cGVjdGF0aW9uX2xpbmUpOgogICAgICAgICAgICAgcmV0dXJuCiAKLSAgICAgICAgZXhw
ZWN0YXRpb25fbGluZS5wYXRoID0gc2VsZi5fcG9ydC5ub3JtYWxpemVfdGVzdF9uYW1lKGV4cGVj
dGF0aW9uX2xpbmUubmFtZSkKKyAgICAgICAgaWYgZXhwZWN0YXRpb25fbGluZS5pc19maWxlOgor
ICAgICAgICAgICAgZXhwZWN0YXRpb25fbGluZS5wYXRoID0gZXhwZWN0YXRpb25fbGluZS5uYW1l
CisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBleHBlY3RhdGlvbl9saW5lLnBhdGggPSBzZWxm
Ll9wb3J0Lm5vcm1hbGl6ZV90ZXN0X25hbWUoZXhwZWN0YXRpb25fbGluZS5uYW1lKQorCiAgICAg
ICAgIHNlbGYuX2NvbGxlY3RfbWF0Y2hpbmdfdGVzdHMoZXhwZWN0YXRpb25fbGluZSkKIAogICAg
ICAgICBzZWxmLl9wYXJzZV9tb2RpZmllcnMoZXhwZWN0YXRpb25fbGluZSkKQEAgLTI4Myw3ICsz
MDMsNyBAQCBjbGFzcyBUZXN0RXhwZWN0YXRpb25QYXJzZXIob2JqZWN0KToKICAgICAgICAgICAg
IGV4cGVjdGF0aW9uX2xpbmUubWF0Y2hpbmdfdGVzdHMgPSBbZXhwZWN0YXRpb25fbGluZS5wYXRo
XQogICAgICAgICAgICAgcmV0dXJuCiAKLSAgICAgICAgaWYgc2VsZi5fcG9ydC50ZXN0X2lzZGly
KGV4cGVjdGF0aW9uX2xpbmUucGF0aCk6CisgICAgICAgIGlmIG5vdCBleHBlY3RhdGlvbl9saW5l
LmlzX2ZpbGU6CiAgICAgICAgICAgICAjIHRoaXMgaXMgYSB0ZXN0IGNhdGVnb3J5LCByZXR1cm4g
YWxsIHRoZSB0ZXN0cyBvZiB0aGUgY2F0ZWdvcnkuCiAgICAgICAgICAgICBleHBlY3RhdGlvbl9s
aW5lLm1hdGNoaW5nX3Rlc3RzID0gW3Rlc3QgZm9yIHRlc3QgaW4gc2VsZi5fZnVsbF90ZXN0X2xp
c3QgaWYgdGVzdC5zdGFydHN3aXRoKGV4cGVjdGF0aW9uX2xpbmUucGF0aCldCiAgICAgICAgICAg
ICByZXR1cm4KQEAgLTcwMCw3ICs3MjAsNiBAQCBjbGFzcyBUZXN0RXhwZWN0YXRpb25zKG9iamVj
dCk6CiAgICAgICAgIHNlbGYuX21vZGVsID0gVGVzdEV4cGVjdGF0aW9uc01vZGVsKCkKICAgICAg
ICAgc2VsZi5fcGFyc2VyID0gVGVzdEV4cGVjdGF0aW9uUGFyc2VyKHBvcnQsIHRlc3RzLCBpc19s
aW50X21vZGUpCiAgICAgICAgIHNlbGYuX3BvcnQgPSBwb3J0Ci0gICAgICAgIHNlbGYuX3Rlc3Rf
Y29uZmlndXJhdGlvbl9jb252ZXJ0ZXIgPSBUZXN0Q29uZmlndXJhdGlvbkNvbnZlcnRlcihwb3J0
LmFsbF90ZXN0X2NvbmZpZ3VyYXRpb25zKCksIHBvcnQuY29uZmlndXJhdGlvbl9zcGVjaWZpZXJf
bWFjcm9zKCkpCiAgICAgICAgIHNlbGYuX3NraXBwZWRfdGVzdHNfd2FybmluZ3MgPSBbXQogCiAg
ICAgICAgIHNlbGYuX2V4cGVjdGF0aW9ucyA9IHNlbGYuX3BhcnNlci5wYXJzZShleHBlY3RhdGlv
bnMpCkBAIC04MzIsOCArODUxLDYgQEAgY2xhc3MgVGVzdEV4cGVjdGF0aW9ucyhvYmplY3QpOgog
ICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIGZvciBpbmRleCwgdGVzdCBpbiBlbnVtZXJhdGUo
c2VsZi5fZXhwZWN0YXRpb25zLCBzdGFydD0xKToKICAgICAgICAgICAgIGlmIHRlc3QubmFtZSBh
bmQgdGVzdC5uYW1lIGluIHRlc3RzX3RvX3NraXA6Ci0gICAgICAgICAgICAgICAgc2VsZi5fc2tp
cHBlZF90ZXN0c193YXJuaW5ncy5hcHBlbmQoJ1RoZSAlcyB0ZXN0IGZyb20gdGVzdF9leHBlY3Rh
dGlvbnMudHh0IGluIGxpbmUgJWQgaXMgYWxzbyBpbiBTa2lwcGVkIScgJQotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICh0ZXN0Lm5hbWUsIGluZGV4KSkKLSAgICAgICAgc2tpcHBlZF90ZXN0
cyA9ICdcbicuam9pbihtYXAobGFtYmRhIHRlc3RfcGF0aDogJ0JVR19TS0lQUEVEIFNLSVAgOiAl
cyA9IEZBSUwnICUgdGVzdF9wYXRoLCB0ZXN0c190b19za2lwKSkKLSAgICAgICAgZm9yIHRlc3Qg
aW4gc2VsZi5fcGFyc2VyLnBhcnNlKHNraXBwZWRfdGVzdHMpOgorICAgICAgICAgICAgICAgIHNl
bGYuX3NraXBwZWRfdGVzdHNfd2FybmluZ3MuYXBwZW5kKCdUaGUgJXMgdGVzdCBmcm9tIHRlc3Rf
ZXhwZWN0YXRpb25zLnR4dCBpbiBsaW5lICVkIGlzIGFsc28gaW4gU2tpcHBlZCEnICUgKHRlc3Qu
bmFtZSwgaW5kZXgpKQorICAgICAgICBmb3IgdGVzdCBpbiBzZWxmLl9wYXJzZXIucGFyc2Vfc2tp
cHBlZF90ZXN0cyh0ZXN0c190b19za2lwKToKICAgICAgICAgICAgIHNlbGYuX21vZGVsLmFkZF9l
eHBlY3RhdGlvbl9saW5lKHRlc3QsIG92ZXJyaWRlc19hbGxvd2VkPVRydWUpCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKaW5kZXggZWE4NmVj
NmY2MTNiMjkzNmYyNTFkOTdmMDZmMzE2Y2I5N2VlOTk2NS4uMzc5NjZjYTBiOTRkNGQ4OTI4ZWQ1
ZWQyMjBiMzFmMjYzZTU1MTY3ZiAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQpAQCAtNTE4LDYgKzUxOCwxNCBAQCBjbGFzcyBQb3J0KG9i
amVjdCk6CiAgICAgICAgIHJldHVybiBmaWx0ZXIobGFtYmRhIHg6IHNlbGYuX2ZpbGVzeXN0ZW0u
aXNkaXIoc2VsZi5fZmlsZXN5c3RlbS5qb2luKGxheW91dF90ZXN0c19kaXIsIHgpKSwKICAgICAg
ICAgICAgICAgICAgICAgICBzZWxmLl9maWxlc3lzdGVtLmxpc3RkaXIobGF5b3V0X3Rlc3RzX2Rp
cikpCiAKKyAgICBAbWVtb2l6ZWQKKyAgICBkZWYgdGVzdF9pc2ZpbGUoc2VsZiwgdGVzdF9uYW1l
KToKKyAgICAgICAgIiIiUmV0dXJuIFRydWUgaWYgdGhlIHRlc3QgbmFtZSByZWZlcnMgdG8gYSBk
aXJlY3Rvcnkgb2YgdGVzdHMuIiIiCisgICAgICAgICMgVXNlZCBieSB0ZXN0X2V4cGVjdGF0aW9u
cy5weSB0byBhcHBseSBydWxlcyB0byB3aG9sZSBkaXJlY3Rvcmllcy4KKyAgICAgICAgdGVzdF9w
YXRoID0gc2VsZi5hYnNwYXRoX2Zvcl90ZXN0KHRlc3RfbmFtZSkKKyAgICAgICAgcmV0dXJuIHNl
bGYuX2ZpbGVzeXN0ZW0uaXNmaWxlKHRlc3RfcGF0aCkKKworICAgIEBtZW1vaXplZAogICAgIGRl
ZiB0ZXN0X2lzZGlyKHNlbGYsIHRlc3RfbmFtZSk6CiAgICAgICAgICIiIlJldHVybiBUcnVlIGlm
IHRoZSB0ZXN0IG5hbWUgcmVmZXJzIHRvIGEgZGlyZWN0b3J5IG9mIHRlc3RzLiIiIgogICAgICAg
ICAjIFVzZWQgYnkgdGVzdF9leHBlY3RhdGlvbnMucHkgdG8gYXBwbHkgcnVsZXMgdG8gd2hvbGUg
ZGlyZWN0b3JpZXMuCkBAIC01NDAsNyArNTQ4LDkgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogCiAg
ICAgZGVmIG5vcm1hbGl6ZV90ZXN0X25hbWUoc2VsZiwgdGVzdF9uYW1lKToKICAgICAgICAgIiIi
UmV0dXJucyBhIG5vcm1hbGl6ZWQgdmVyc2lvbiBvZiB0aGUgdGVzdCBuYW1lIG9yIHRlc3QgZGly
ZWN0b3J5LiIiIgotICAgICAgICBpZiBzZWxmLnRlc3RfaXNkaXIodGVzdF9uYW1lKSBhbmQgbm90
IHRlc3RfbmFtZS5lbmRzd2l0aCgnLycpOgorICAgICAgICBpZiB0ZXN0X25hbWUuZW5kc3dpdGgo
Jy8nKToKKyAgICAgICAgICAgIHJldHVybiB0ZXN0X25hbWUKKyAgICAgICAgaWYgc2VsZi50ZXN0
X2lzZGlyKHRlc3RfbmFtZSk6CiAgICAgICAgICAgICByZXR1cm4gdGVzdF9uYW1lICsgJy8nCiAg
ICAgICAgIHJldHVybiB0ZXN0X25hbWUKIApAQCAtNTYwLDkgKzU3MCwxMCBAQCBjbGFzcyBQb3J0
KG9iamVjdCk6CiAgICAgICAgICIiIgogICAgICAgICBzZWxmLl9maWxlc3lzdGVtLndyaXRlX2Jp
bmFyeV9maWxlKGJhc2VsaW5lX3BhdGgsIGRhdGEpCiAKKyAgICBAbWVtb2l6ZWQKICAgICBkZWYg
bGF5b3V0X3Rlc3RzX2RpcihzZWxmKToKICAgICAgICAgIiIiUmV0dXJuIHRoZSBhYnNvbHV0ZSBw
YXRoIHRvIHRoZSB0b3Agb2YgdGhlIExheW91dFRlc3RzIGRpcmVjdG9yeS4iIiIKLSAgICAgICAg
cmV0dXJuIHNlbGYucGF0aF9mcm9tX3dlYmtpdF9iYXNlKCdMYXlvdXRUZXN0cycpCisgICAgICAg
IHJldHVybiBzZWxmLl9maWxlc3lzdGVtLm5vcm1wYXRoKHNlbGYucGF0aF9mcm9tX3dlYmtpdF9i
YXNlKCdMYXlvdXRUZXN0cycpKQogCiAgICAgZGVmIHBlcmZfdGVzdHNfZGlyKHNlbGYpOgogICAg
ICAgICAiIiJSZXR1cm4gdGhlIGFic29sdXRlIHBhdGggdG8gdGhlIHRvcCBvZiB0aGUgUGVyZm9y
bWFuY2VUZXN0cyBkaXJlY3RvcnkuIiIiCkBAIC02OTcsMTAgKzcwOCwxMSBAQCBjbGFzcyBQb3J0
KG9iamVjdCk6CiAgICAgICAgIGFzc2VydCBmaWxlbmFtZS5zdGFydHN3aXRoKHNlbGYucGVyZl90
ZXN0c19kaXIoKSksICIlcyBkaWQgbm90IHN0YXJ0IHdpdGggJXMiICUgKGZpbGVuYW1lLCBzZWxm
LnBlcmZfdGVzdHNfZGlyKCkpCiAgICAgICAgIHJldHVybiBmaWxlbmFtZVtsZW4oc2VsZi5wZXJm
X3Rlc3RzX2RpcigpKSArIDE6XQogCisgICAgQG1lbW9pemVkCiAgICAgZGVmIGFic3BhdGhfZm9y
X3Rlc3Qoc2VsZiwgdGVzdF9uYW1lKToKICAgICAgICAgIiIiUmV0dXJucyB0aGUgZnVsbCBwYXRo
IHRvIHRoZSBmaWxlIGZvciBhIGdpdmVuIHRlc3QgbmFtZS4gVGhpcyBpcyB0aGUKICAgICAgICAg
aW52ZXJzZSBvZiByZWxhdGl2ZV90ZXN0X2ZpbGVuYW1lKCkuIiIiCi0gICAgICAgIHJldHVybiBz
ZWxmLl9maWxlc3lzdGVtLm5vcm1wYXRoKHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLmxheW91
dF90ZXN0c19kaXIoKSwgdGVzdF9uYW1lKSkKKyAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGVzeXN0
ZW0uam9pbihzZWxmLmxheW91dF90ZXN0c19kaXIoKSwgdGVzdF9uYW1lKQogCiAgICAgZGVmIHJl
c3VsdHNfZGlyZWN0b3J5KHNlbGYpOgogICAgICAgICAiIiJBYnNvbHV0ZSBwYXRoIHRvIHRoZSBw
bGFjZSB0byBzdG9yZSB0aGUgdGVzdCByZXN1bHRzICh1c2VzIC0tcmVzdWx0cy1kaXJlY3Rvcnkp
LiIiIgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124215</attachid>
            <date>2012-01-26 16:46:57 -0800</date>
            <delta_ts>2012-01-30 15:16:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77059-20120126164656.patch</filename>
            <type>text/plain</type>
            <size>10273</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2MDU4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggY2VkOWEyNWMzZWM3MDAwMTQ4MTBiYTZjNzQ3ZjFkMzhm
ODg3MzExNi4uNDg5ZjdmOTg2MWExYTRlNDhiZDI0NTk3MjQ5NTc5YWJlYzVhNmRiYiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM2
IEBACiAyMDEyLTAxLTI2ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CiAKKyAgICAg
ICAgUGFyc2luZyB0ZXN0X2V4cGVjYXRpb25zLnR4dCArIFNraXBwZWQgbGlzdHMgdGFrZXMgdG9v
IGxvbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3
MDU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBzYXZlcyB+MTAwbXMgb24gdGhlIEFwcGxlIE1hYyBwb3J0LgorICAgICAgICAtbWVtb2l6ZSBh
IGJ1bmNoIG9mIHBhdGggbWV0aG9kcy4KKyAgICAgICAgLUF2b2lkIGRvaW5nIG11bHRpcGxlIGRp
c2sgYWNjZXNzZXMgcGVyIGxpbmUuCisgICAgICAgIC1QYXJzZSB0aGUgc2tpcHBlZCBsaXN0IGRp
cmVjdGx5IGluc3RlYWQgb2YgdHVybmluZyBpdCBpbnRvIGEgdGVzdF9leHBlY2F0aW9ucy50eHQK
KyAgICAgICAgZm9ybWF0dGluZyBzdHJpbmcgYW5kIHBhcnNpbmcgdGhhdC4KKworICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X2V4cGVjdGF0aW9ucy5w
eToKKyAgICAgICAgKFRlc3RFeHBlY3RhdGlvblBhcnNlcik6CisgICAgICAgIChUZXN0RXhwZWN0
YXRpb25QYXJzZXIuZXhwZWN0YXRpb25fZm9yX3NraXBwZWRfdGVzdCk6CisgICAgICAgIChUZXN0
RXhwZWN0YXRpb25QYXJzZXIuX3BhcnNlX2xpbmUpOgorICAgICAgICAoVGVzdEV4cGVjdGF0aW9u
UGFyc2VyLl9jb2xsZWN0X21hdGNoaW5nX3Rlc3RzKToKKyAgICAgICAgKFRlc3RFeHBlY3RhdGlv
bnMuX19pbml0X18pOgorICAgICAgICAoVGVzdEV4cGVjdGF0aW9ucy5fYWRkX3NraXBwZWRfdGVz
dHMpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0
X2V4cGVjdGF0aW9uc191bml0dGVzdC5weToKKyAgICAgICAgKHRlc3RfYWRkX3NraXBwZWRfdGVz
dHMpOgorICAgICAgICAodGVzdF9hZGRfc2tpcHBlZF90ZXN0c19kdXBsaWNhdGUpOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAg
KFBvcnQpOgorICAgICAgICAoUG9ydC50ZXN0X2lzZmlsZSk6CisgICAgICAgIChQb3J0Lm5vcm1h
bGl6ZV90ZXN0X25hbWUpOgorICAgICAgICAoUG9ydC5sYXlvdXRfdGVzdHNfZGlyKToKKyAgICAg
ICAgKFBvcnQuYWJzcGF0aF9mb3JfdGVzdCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0cy5weToKKworMjAxMi0wMS0yNiAgT2phbiBWYWZh
aSAgPG9qYW5AY2hyb21pdW0ub3JnPgorCiAgICAgICAgIHJ1bi13ZWJraXQtdGVzdHMgY2FsbHMg
Im5tIiB3aGVuIGl0IGRvZXNuJ3QgbmVlZCB0bwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzcxNDMKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfZXhwZWN0YXRpb25zLnB5IGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfZXhwZWN0YXRpb25zLnB5
CmluZGV4IDdmZTczMDEyYzM1YmZjN2RiYWRkOWI0Mjc2NjRhNmI1YmExYzk3OTkuLjAxMGRkZDg0
ODcyMTU0Mjg2YTRlZTZjM2M3NmFmNTBiZmNiMTAyNjIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X2V4cGVjdGF0aW9ucy5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9leHBlY3Rh
dGlvbnMucHkKQEAgLTE4NCw5ICsxODQsMTEgQEAgY2xhc3MgVGVzdEV4cGVjdGF0aW9uU2VyaWFs
aXplcihvYmplY3QpOgogY2xhc3MgVGVzdEV4cGVjdGF0aW9uUGFyc2VyKG9iamVjdCk6CiAgICAg
IiIiUHJvdmlkZXMgcGFyc2luZyBmYWNpbGl0aWVzIGZvciBsaW5lcyBpbiB0aGUgdGVzdF9leHBl
Y3RhdGlvbi50eHQgZmlsZS4iIiIKIAorICAgIERVTU1ZX0JVR19NT0RJRklFUiA9ICJidWdfZHVt
bXkiCiAgICAgQlVHX01PRElGSUVSX1BSRUZJWCA9ICdidWcnCiAgICAgQlVHX01PRElGSUVSX1JF
R0VYID0gJ2J1Z1xkKycKICAgICBSRUJBU0VMSU5FX01PRElGSUVSID0gJ3JlYmFzZWxpbmUnCisg
ICAgRkFJTF9FWFBFQ1RBVElPTiA9ICdmYWlsJwogICAgIFNLSVBfTU9ESUZJRVIgPSAnc2tpcCcK
ICAgICBTTE9XX01PRElGSUVSID0gJ3Nsb3cnCiAgICAgV09OVEZJWF9NT0RJRklFUiA9ICd3b250
Zml4JwpAQCAtMjA1LDE1ICsyMDcsMzAgQEAgY2xhc3MgVGVzdEV4cGVjdGF0aW9uUGFyc2VyKG9i
amVjdCk6CiAgICAgICAgICAgICBzZWxmLl9wYXJzZV9saW5lKGV4cGVjdGF0aW9uX2xpbmUpCiAg
ICAgICAgIHJldHVybiBleHBlY3RhdGlvbnMKIAorICAgIGRlZiBleHBlY3RhdGlvbl9mb3Jfc2tp
cHBlZF90ZXN0KHNlbGYsIHRlc3RfbmFtZSk6CisgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUgPSBU
ZXN0RXhwZWN0YXRpb25MaW5lKCkKKyAgICAgICAgZXhwZWN0YXRpb25fbGluZS5vcmlnaW5hbF9z
dHJpbmcgPSB0ZXN0X25hbWUKKyAgICAgICAgZXhwZWN0YXRpb25fbGluZS5tb2RpZmllcnMgPSBb
VGVzdEV4cGVjdGF0aW9uUGFyc2VyLkRVTU1ZX0JVR19NT0RJRklFUiwgVGVzdEV4cGVjdGF0aW9u
UGFyc2VyLlNLSVBfTU9ESUZJRVJdCisgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUubmFtZSA9IHRl
c3RfbmFtZQorICAgICAgICBleHBlY3RhdGlvbl9saW5lLmV4cGVjdGF0aW9ucyA9IFtUZXN0RXhw
ZWN0YXRpb25QYXJzZXIuRkFJTF9FWFBFQ1RBVElPTl0KKyAgICAgICAgc2VsZi5fcGFyc2VfbGlu
ZShleHBlY3RhdGlvbl9saW5lKQorICAgICAgICByZXR1cm4gZXhwZWN0YXRpb25fbGluZQorCiAg
ICAgZGVmIF9wYXJzZV9saW5lKHNlbGYsIGV4cGVjdGF0aW9uX2xpbmUpOgogICAgICAgICBpZiBu
b3QgZXhwZWN0YXRpb25fbGluZS5uYW1lOgogICAgICAgICAgICAgcmV0dXJuCiAKICAgICAgICAg
c2VsZi5fY2hlY2tfbW9kaWZpZXJzX2FnYWluc3RfZXhwZWN0YXRpb25zKGV4cGVjdGF0aW9uX2xp
bmUpCi0gICAgICAgIGlmIHNlbGYuX2NoZWNrX3BhdGhfZG9lc19ub3RfZXhpc3QoZXhwZWN0YXRp
b25fbGluZSk6CisKKyAgICAgICAgZXhwZWN0YXRpb25fbGluZS5pc19maWxlID0gc2VsZi5fcG9y
dC50ZXN0X2lzZmlsZShleHBlY3RhdGlvbl9saW5lLm5hbWUpCisgICAgICAgIGlmIG5vdCBleHBl
Y3RhdGlvbl9saW5lLmlzX2ZpbGUgYW5kIHNlbGYuX2NoZWNrX3BhdGhfZG9lc19ub3RfZXhpc3Qo
ZXhwZWN0YXRpb25fbGluZSk6CiAgICAgICAgICAgICByZXR1cm4KIAotICAgICAgICBleHBlY3Rh
dGlvbl9saW5lLnBhdGggPSBzZWxmLl9wb3J0Lm5vcm1hbGl6ZV90ZXN0X25hbWUoZXhwZWN0YXRp
b25fbGluZS5uYW1lKQorICAgICAgICBpZiBleHBlY3RhdGlvbl9saW5lLmlzX2ZpbGU6CisgICAg
ICAgICAgICBleHBlY3RhdGlvbl9saW5lLnBhdGggPSBleHBlY3RhdGlvbl9saW5lLm5hbWUKKyAg
ICAgICAgZWxzZToKKyAgICAgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUucGF0aCA9IHNlbGYuX3Bv
cnQubm9ybWFsaXplX3Rlc3RfbmFtZShleHBlY3RhdGlvbl9saW5lLm5hbWUpCisKICAgICAgICAg
c2VsZi5fY29sbGVjdF9tYXRjaGluZ190ZXN0cyhleHBlY3RhdGlvbl9saW5lKQogCiAgICAgICAg
IHNlbGYuX3BhcnNlX21vZGlmaWVycyhleHBlY3RhdGlvbl9saW5lKQpAQCAtMjg1LDcgKzMwMiw3
IEBAIGNsYXNzIFRlc3RFeHBlY3RhdGlvblBhcnNlcihvYmplY3QpOgogICAgICAgICAgICAgZXhw
ZWN0YXRpb25fbGluZS5tYXRjaGluZ190ZXN0cyA9IFtleHBlY3RhdGlvbl9saW5lLnBhdGhdCiAg
ICAgICAgICAgICByZXR1cm4KIAotICAgICAgICBpZiBzZWxmLl9wb3J0LnRlc3RfaXNkaXIoZXhw
ZWN0YXRpb25fbGluZS5wYXRoKToKKyAgICAgICAgaWYgbm90IGV4cGVjdGF0aW9uX2xpbmUuaXNf
ZmlsZToKICAgICAgICAgICAgICMgdGhpcyBpcyBhIHRlc3QgY2F0ZWdvcnksIHJldHVybiBhbGwg
dGhlIHRlc3RzIG9mIHRoZSBjYXRlZ29yeS4KICAgICAgICAgICAgIGV4cGVjdGF0aW9uX2xpbmUu
bWF0Y2hpbmdfdGVzdHMgPSBbdGVzdCBmb3IgdGVzdCBpbiBzZWxmLl9mdWxsX3Rlc3RfbGlzdCBp
ZiB0ZXN0LnN0YXJ0c3dpdGgoZXhwZWN0YXRpb25fbGluZS5wYXRoKV0KICAgICAgICAgICAgIHJl
dHVybgpAQCAtNzAyLDcgKzcxOSw2IEBAIGNsYXNzIFRlc3RFeHBlY3RhdGlvbnMob2JqZWN0KToK
ICAgICAgICAgc2VsZi5fbW9kZWwgPSBUZXN0RXhwZWN0YXRpb25zTW9kZWwoKQogICAgICAgICBz
ZWxmLl9wYXJzZXIgPSBUZXN0RXhwZWN0YXRpb25QYXJzZXIocG9ydCwgdGVzdHMsIGlzX2xpbnRf
bW9kZSkKICAgICAgICAgc2VsZi5fcG9ydCA9IHBvcnQKLSAgICAgICAgc2VsZi5fdGVzdF9jb25m
aWd1cmF0aW9uX2NvbnZlcnRlciA9IFRlc3RDb25maWd1cmF0aW9uQ29udmVydGVyKHBvcnQuYWxs
X3Rlc3RfY29uZmlndXJhdGlvbnMoKSwgcG9ydC5jb25maWd1cmF0aW9uX3NwZWNpZmllcl9tYWNy
b3MoKSkKICAgICAgICAgc2VsZi5fc2tpcHBlZF90ZXN0c193YXJuaW5ncyA9IFtdCiAKICAgICAg
ICAgc2VsZi5fZXhwZWN0YXRpb25zID0gc2VsZi5fcGFyc2VyLnBhcnNlKGV4cGVjdGF0aW9ucykK
QEAgLTgzNSw2ICs4NTEsNSBAQCBjbGFzcyBUZXN0RXhwZWN0YXRpb25zKG9iamVjdCk6CiAgICAg
ICAgIGZvciBpbmRleCwgdGVzdCBpbiBlbnVtZXJhdGUoc2VsZi5fZXhwZWN0YXRpb25zLCBzdGFy
dD0xKToKICAgICAgICAgICAgIGlmIHRlc3QubmFtZSBhbmQgdGVzdC5uYW1lIGluIHRlc3RzX3Rv
X3NraXA6CiAgICAgICAgICAgICAgICAgc2VsZi5fc2tpcHBlZF90ZXN0c193YXJuaW5ncy5hcHBl
bmQoJzolZCAlcyBpcyBhbHNvIGluIGEgU2tpcHBlZCBmaWxlLicgJSAoaW5kZXgsIHRlc3QubmFt
ZSkpCi0gICAgICAgIHNraXBwZWRfdGVzdHMgPSAnXG4nLmpvaW4obWFwKGxhbWJkYSB0ZXN0X3Bh
dGg6ICdCVUdfU0tJUFBFRCBTS0lQIDogJXMgPSBGQUlMJyAlIHRlc3RfcGF0aCwgdGVzdHNfdG9f
c2tpcCkpCi0gICAgICAgIGZvciB0ZXN0IGluIHNlbGYuX3BhcnNlci5wYXJzZShza2lwcGVkX3Rl
c3RzKToKLSAgICAgICAgICAgIHNlbGYuX21vZGVsLmFkZF9leHBlY3RhdGlvbl9saW5lKHRlc3Qs
IG92ZXJyaWRlc19hbGxvd2VkPVRydWUpCisgICAgICAgIGZvciB0ZXN0X25hbWUgaW4gdGVzdHNf
dG9fc2tpcDoKKyAgICAgICAgICAgIHNlbGYuX21vZGVsLmFkZF9leHBlY3RhdGlvbl9saW5lKHNl
bGYuX3BhcnNlci5leHBlY3RhdGlvbl9mb3Jfc2tpcHBlZF90ZXN0KHRlc3RfbmFtZSksIG92ZXJy
aWRlc19hbGxvd2VkPVRydWUpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9tb2RlbHMvdGVzdF9leHBlY3RhdGlvbnNfdW5pdHRlc3QucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9leHBlY3RhdGlvbnNfdW5p
dHRlc3QucHkKaW5kZXggYTI5NGYzNjI2YTNjNzA5MjBjZDU0MmYxMjIxOTg1MjkxYTQzNzA2My4u
OThiOTFhZWVkMWYwZGY3YzFhOWRkMjk2M2NjNTkzMzcxYzJhZjg1NyAxMDA2NDQKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfZXhwZWN0YXRpb25z
X3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21v
ZGVscy90ZXN0X2V4cGVjdGF0aW9uc191bml0dGVzdC5weQpAQCAtMjczLDcgKzI3MywxNSBAQCBC
VUdfT1ZFUlJJREUgOiBmYWlsdXJlcy9leHBlY3RlZC90ZXh0Lmh0bWwgPSBDUkFTSAogICAgICAg
ICBwb3J0ID0gTW9ja0hvc3QoKS5wb3J0X2ZhY3RvcnkuZ2V0KCdxdCcpCiAgICAgICAgIHBvcnQu
X2ZpbGVzeXN0ZW0uZmlsZXNbcG9ydC5fZmlsZXN5c3RlbS5qb2luKHBvcnQubGF5b3V0X3Rlc3Rz
X2RpcigpLCAncGxhdGZvcm0vcXQvU2tpcHBlZCcpXSA9ICdmYWlsdXJlcy9leHBlY3RlZC90ZXh0
Lmh0bWwnCiAgICAgICAgIHBvcnQuX2ZpbGVzeXN0ZW0uZmlsZXNbcG9ydC5fZmlsZXN5c3RlbS5q
b2luKHBvcnQubGF5b3V0X3Rlc3RzX2RpcigpLCAnZmFpbHVyZXMvZXhwZWN0ZWQvdGV4dC5odG1s
JyldID0gJ2ZvbycKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFyc2VFcnJvciwgVGVzdEV4
cGVjdGF0aW9ucywgcG9ydCwgJ2ZhaWx1cmVzL2V4cGVjdGVkL3RleHQuaHRtbFxuJywgJ0JVR1gg
OiBmYWlsdXJlcy9leHBlY3RlZC90ZXh0Lmh0bWwgPSB0ZXh0XG4nLCBOb25lLCBUcnVlKQorICAg
ICAgICBleHBlY3RhdGlvbnMgPSBUZXN0RXhwZWN0YXRpb25zKHBvcnQsIHRlc3RzPVsnZmFpbHVy
ZXMvZXhwZWN0ZWQvdGV4dC5odG1sJ10sIGV4cGVjdGF0aW9ucz0nJywgdGVzdF9jb25maWc9cG9y
dC50ZXN0X2NvbmZpZ3VyYXRpb24oKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZXhwZWN0
YXRpb25zLmdldF9tb2RpZmllcnMoJ2ZhaWx1cmVzL2V4cGVjdGVkL3RleHQuaHRtbCcpLCBbVGVz
dEV4cGVjdGF0aW9uUGFyc2VyLkRVTU1ZX0JVR19NT0RJRklFUiwgVGVzdEV4cGVjdGF0aW9uUGFy
c2VyLlNLSVBfTU9ESUZJRVJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhleHBlY3RhdGlv
bnMuZ2V0X2V4cGVjdGF0aW9ucygnZmFpbHVyZXMvZXhwZWN0ZWQvdGV4dC5odG1sJyksIHNldChb
RkFJTF0pKQorCisgICAgZGVmIHRlc3RfYWRkX3NraXBwZWRfdGVzdHNfZHVwbGljYXRlKHNlbGYp
OgorICAgICAgICBwb3J0ID0gTW9ja0hvc3QoKS5wb3J0X2ZhY3RvcnkuZ2V0KCdxdCcpCisgICAg
ICAgIHBvcnQuX2ZpbGVzeXN0ZW0uZmlsZXNbcG9ydC5fZmlsZXN5c3RlbS5qb2luKHBvcnQubGF5
b3V0X3Rlc3RzX2RpcigpLCAncGxhdGZvcm0vcXQvU2tpcHBlZCcpXSA9ICdmYWlsdXJlcy9leHBl
Y3RlZC90ZXh0Lmh0bWwnCisgICAgICAgIHBvcnQuX2ZpbGVzeXN0ZW0uZmlsZXNbcG9ydC5fZmls
ZXN5c3RlbS5qb2luKHBvcnQubGF5b3V0X3Rlc3RzX2RpcigpLCAnZmFpbHVyZXMvZXhwZWN0ZWQv
dGV4dC5odG1sJyldID0gJ2ZvbycKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFyc2VFcnJv
ciwgVGVzdEV4cGVjdGF0aW9ucywgcG9ydCwgdGVzdHM9WydmYWlsdXJlcy9leHBlY3RlZC90ZXh0
Lmh0bWwnXSwgZXhwZWN0YXRpb25zPSdCVUdYIDogZmFpbHVyZXMvZXhwZWN0ZWQvdGV4dC5odG1s
ID0gdGV4dFxuJywgdGVzdF9jb25maWc9cG9ydC50ZXN0X2NvbmZpZ3VyYXRpb24oKSwgaXNfbGlu
dF9tb2RlPVRydWUpCiAKIAogY2xhc3MgRXhwZWN0YXRpb25TeW50YXhUZXN0cyhCYXNlKToKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5w
eSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQppbmRl
eCBlZGQ2MTY2MDkwZWNiMmEwMGQxZDIxMmIzYWZhYjllY2Y0NTdkYjlkLi5hOGI5OGZkYTJjMzU2
ZjU0MDNmN2M1NjJhOTRiNjc5MmU4MzNkMmI0IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CkBAIC01MTgsNiArNTE4LDE0IEBAIGNsYXNz
IFBvcnQob2JqZWN0KToKICAgICAgICAgcmV0dXJuIGZpbHRlcihsYW1iZGEgeDogc2VsZi5fZmls
ZXN5c3RlbS5pc2RpcihzZWxmLl9maWxlc3lzdGVtLmpvaW4obGF5b3V0X3Rlc3RzX2RpciwgeCkp
LAogICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ubGlzdGRpcihsYXlvdXRf
dGVzdHNfZGlyKSkKIAorICAgIEBtZW1vaXplZAorICAgIGRlZiB0ZXN0X2lzZmlsZShzZWxmLCB0
ZXN0X25hbWUpOgorICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZiB0aGUgdGVzdCBuYW1lIHJlZmVy
cyB0byBhIGRpcmVjdG9yeSBvZiB0ZXN0cy4iIiIKKyAgICAgICAgIyBVc2VkIGJ5IHRlc3RfZXhw
ZWN0YXRpb25zLnB5IHRvIGFwcGx5IHJ1bGVzIHRvIHdob2xlIGRpcmVjdG9yaWVzLgorICAgICAg
ICB0ZXN0X3BhdGggPSBzZWxmLmFic3BhdGhfZm9yX3Rlc3QodGVzdF9uYW1lKQorICAgICAgICBy
ZXR1cm4gc2VsZi5fZmlsZXN5c3RlbS5pc2ZpbGUodGVzdF9wYXRoKQorCisgICAgQG1lbW9pemVk
CiAgICAgZGVmIHRlc3RfaXNkaXIoc2VsZiwgdGVzdF9uYW1lKToKICAgICAgICAgIiIiUmV0dXJu
IFRydWUgaWYgdGhlIHRlc3QgbmFtZSByZWZlcnMgdG8gYSBkaXJlY3Rvcnkgb2YgdGVzdHMuIiIi
CiAgICAgICAgICMgVXNlZCBieSB0ZXN0X2V4cGVjdGF0aW9ucy5weSB0byBhcHBseSBydWxlcyB0
byB3aG9sZSBkaXJlY3Rvcmllcy4KQEAgLTU0MCw3ICs1NDgsOSBAQCBjbGFzcyBQb3J0KG9iamVj
dCk6CiAKICAgICBkZWYgbm9ybWFsaXplX3Rlc3RfbmFtZShzZWxmLCB0ZXN0X25hbWUpOgogICAg
ICAgICAiIiJSZXR1cm5zIGEgbm9ybWFsaXplZCB2ZXJzaW9uIG9mIHRoZSB0ZXN0IG5hbWUgb3Ig
dGVzdCBkaXJlY3RvcnkuIiIiCi0gICAgICAgIGlmIHNlbGYudGVzdF9pc2Rpcih0ZXN0X25hbWUp
IGFuZCBub3QgdGVzdF9uYW1lLmVuZHN3aXRoKCcvJyk6CisgICAgICAgIGlmIHRlc3RfbmFtZS5l
bmRzd2l0aCgnLycpOgorICAgICAgICAgICAgcmV0dXJuIHRlc3RfbmFtZQorICAgICAgICBpZiBz
ZWxmLnRlc3RfaXNkaXIodGVzdF9uYW1lKToKICAgICAgICAgICAgIHJldHVybiB0ZXN0X25hbWUg
KyAnLycKICAgICAgICAgcmV0dXJuIHRlc3RfbmFtZQogCkBAIC01NjAsOSArNTcwLDEwIEBAIGNs
YXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0u
d3JpdGVfYmluYXJ5X2ZpbGUoYmFzZWxpbmVfcGF0aCwgZGF0YSkKIAorICAgIEBtZW1vaXplZAog
ICAgIGRlZiBsYXlvdXRfdGVzdHNfZGlyKHNlbGYpOgogICAgICAgICAiIiJSZXR1cm4gdGhlIGFi
c29sdXRlIHBhdGggdG8gdGhlIHRvcCBvZiB0aGUgTGF5b3V0VGVzdHMgZGlyZWN0b3J5LiIiIgot
ICAgICAgICByZXR1cm4gc2VsZi5wYXRoX2Zyb21fd2Via2l0X2Jhc2UoJ0xheW91dFRlc3RzJykK
KyAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGVzeXN0ZW0ubm9ybXBhdGgoc2VsZi5wYXRoX2Zyb21f
d2Via2l0X2Jhc2UoJ0xheW91dFRlc3RzJykpCiAKICAgICBkZWYgcGVyZl90ZXN0c19kaXIoc2Vs
Zik6CiAgICAgICAgICIiIlJldHVybiB0aGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgdG9wIG9mIHRo
ZSBQZXJmb3JtYW5jZVRlc3RzIGRpcmVjdG9yeS4iIiIKQEAgLTY5NywxMCArNzA4LDExIEBAIGNs
YXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgYXNzZXJ0IGZpbGVuYW1lLnN0YXJ0c3dpdGgoc2Vs
Zi5wZXJmX3Rlc3RzX2RpcigpKSwgIiVzIGRpZCBub3Qgc3RhcnQgd2l0aCAlcyIgJSAoZmlsZW5h
bWUsIHNlbGYucGVyZl90ZXN0c19kaXIoKSkKICAgICAgICAgcmV0dXJuIGZpbGVuYW1lW2xlbihz
ZWxmLnBlcmZfdGVzdHNfZGlyKCkpICsgMTpdCiAKKyAgICBAbWVtb2l6ZWQKICAgICBkZWYgYWJz
cGF0aF9mb3JfdGVzdChzZWxmLCB0ZXN0X25hbWUpOgogICAgICAgICAiIiJSZXR1cm5zIHRoZSBm
dWxsIHBhdGggdG8gdGhlIGZpbGUgZm9yIGEgZ2l2ZW4gdGVzdCBuYW1lLiBUaGlzIGlzIHRoZQog
ICAgICAgICBpbnZlcnNlIG9mIHJlbGF0aXZlX3Rlc3RfZmlsZW5hbWUoKS4iIiIKLSAgICAgICAg
cmV0dXJuIHNlbGYuX2ZpbGVzeXN0ZW0ubm9ybXBhdGgoc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNl
bGYubGF5b3V0X3Rlc3RzX2RpcigpLCB0ZXN0X25hbWUpKQorICAgICAgICByZXR1cm4gc2VsZi5f
ZmlsZXN5c3RlbS5qb2luKHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpLCB0ZXN0X25hbWUpCiAKICAg
ICBkZWYgcmVzdWx0c19kaXJlY3Rvcnkoc2VsZik6CiAgICAgICAgICIiIkFic29sdXRlIHBhdGgg
dG8gdGhlIHBsYWNlIHRvIHN0b3JlIHRoZSB0ZXN0IHJlc3VsdHMgKHVzZXMgLS1yZXN1bHRzLWRp
cmVjdG9yeSkuIiIiCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>