<?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>87714</bug_id>
          
          <creation_ts>2012-05-29 02:23:42 -0700</creation_ts>
          <short_desc>Mac crash logs can take a really long time to be written out.</short_desc>
          <delta_ts>2012-05-30 18:54:30 -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>Mac</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>
          
          <blocked>87720</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Stephanie Lewis">slewis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>ojan</cc>
    
    <cc>slewis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>635773</commentid>
    <comment_count>0</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2012-05-29 02:23:42 -0700</bug_when>
    <thetext>If lots of tests are crashing or the system is running low on memory  ReportCrash can take 15+ minutes to write a crash log to disk.  The tests can&apos;t wait that long so currently report &apos;no crash log found&apos;.

We can run a second check after the tests have finished for any new logs that have been written out.  By this point the workers have finished which should have freed up enough memory and cpu for ReportCrash to finish.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635779</commentid>
    <comment_count>1</comment_count>
      <attachid>144489</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2012-05-29 02:33:12 -0700</bug_when>
    <thetext>Created attachment 144489
first patch

Dirk, any suggestions for improvements?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636296</commentid>
    <comment_count>2</comment_count>
      <attachid>144489</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-05-29 12:02:54 -0700</bug_when>
    <thetext>Comment on attachment 144489
first patch

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

Thanks for working on this! The patch looks generally sound but I think some of the logic needs to be in different places to avoid adding layering dependencies that shouldn&apos;t be there. Let me know if my comments below don&apos;t make sense.

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:41
&gt; +from webkitpy.layout_tests.models.result_summary import ResultSummary

The Port classes shouldn&apos;t have all of these dependencies on test_expectations, TestResultWriter, ResultSummary, etc.

I think it might make more sense to move the logic in look_for_new_crash_logs that actually gets the list of &lt;process_name, pid&gt; pairs to look for into manager.py, and have the Port routine just take a list of tuples to check for. Actually building the list is generic and should be fast, so there&apos;s little harm in running it all the time for every port.

Then the look_for_new_crash_logs() call can return a list or a dict of found crash logs, and let the manager instantiate the TestResultWriter to actually write the files (since, again, this should be generic logic).

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:224
&gt; +                crash_log = self._get_crash_log(failure.process_name, failure.pid, None, None, start_time)

I think it might make sense to modify _get_crash_log() so that it doesn&apos;t do the slow-spin on the second pass (since there&apos;s probably not much point in waiting any longer)?

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:227
&gt; +                if not crash_log.startswith(&quot;no&quot;):

It might also be better to modify _get_crash_log() to return None and let the caller come up with a default (here, you don&apos;t do anything, in WebKitDriver.run_test() return the &quot;no crash log found&quot; string ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637697</commentid>
    <comment_count>3</comment_count>
      <attachid>144924</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2012-05-30 14:35:08 -0700</bug_when>
    <thetext>Created attachment 144924
reworked patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637709</commentid>
    <comment_count>4</comment_count>
      <attachid>144924</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-05-30 14:45:16 -0700</bug_when>
    <thetext>Comment on attachment 144924
reworked patch

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

Looks good. thanks!

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:204
&gt; +            _log.warning(&apos;no crash log found for %s:%d&apos; % (self._crashed_process_name, self._crashed_pid))

This line should be deleted, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637727</commentid>
    <comment_count>5</comment_count>
      <attachid>144924</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-05-30 14:59:02 -0700</bug_when>
    <thetext>Comment on attachment 144924
reworked patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:207
&gt; +    def look_for_new_crash_logs(self, crashed_processes, start_time):

Should we be adding something like this to the chromium_mac port as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637750</commentid>
    <comment_count>6</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-05-30 15:21:37 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 144924 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=144924&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:207
&gt; &gt; +    def look_for_new_crash_logs(self, crashed_processes, start_time):
&gt; 
&gt; Should we be adding something like this to the chromium_mac port as well?

Well, we get stack traces inline through breakpad, right, so I don&apos;t think crashreporter adds much?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637920</commentid>
    <comment_count>7</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2012-05-30 18:54:30 -0700</bug_when>
    <thetext>Committed http://trac.webkit.org/projects/webkit/changeset/119017</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144489</attachid>
            <date>2012-05-29 02:33:12 -0700</date>
            <delta_ts>2012-05-30 14:35:08 -0700</delta_ts>
            <desc>first patch</desc>
            <filename>0001-https-bugs.webkit.org-show_bug.cgi-id-87714.patch</filename>
            <type>text/plain</type>
            <size>8579</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">RnJvbSAyNGJhMjVhYjFiNjMyZDkxZDRmZjY5M2I0NmE4MzExNTBjZjI3OGZkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVwaGFuaWUgTGV3aXMgPHNsZXdpc0BhcHBsZS5jb20+CkRh
dGU6IFR1ZSwgMjkgTWF5IDIwMTIgMDI6MzE6MjggLTA3MDAKU3ViamVjdDogW1BBVENIXSBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc3MTQgTWFjIGNyYXNoIGxvZ3MK
IGNhbiB0YWtlIGEgcmVhbGx5IGxvbmcgdGltZSB0byBiZSB3cml0dGVuIG91dC4KClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKTWFrZSBhIHNlY29uZCBwYXNzIGxvb2tpbmcgZm9yIGNyYXNo
IGxvZ3MgYWZ0ZXIgdGhlIHRlc3RzIGhhdmUgY29tcGxldGVkIHJ1bm5pbmcuCgoqIFNjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXIucHk6Cih1c2VfdHJhY19s
aW5rc19pbl9yZXN1bHRzX2h0bWwpOgooTWFuYWdlci5ydW4pOgoqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKFBvcnQucmVwb3NpdG9yeV9wYXRocyk6CihQb3J0
Lmxvb2tfZm9yX25ld19jcmFzaF9sb2dzKToKKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L21hYy5weToKKE1hY1BvcnQubG9va19mb3JfbmV3X2NyYXNoX2xvZ3MpOgoqIFNjcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjX3VuaXR0ZXN0LnB5OgoodGVzdF9nZXRf
Y3Jhc2hfbG9nKToKKHRlc3RfbG9va19mb3JfbmV3X2NyYXNoX2xvZ3MpOgoodGVzdF9sb29rX2Zv
cl9uZXdfY3Jhc2hfbG9ncy5mYWtlX3RpbWVfY2IpOgotLS0KIFRvb2xzL0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMiArKysrKysrKysrKysrKysKIC4u
Li93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlci5weSAgIHwgICAgNSAr
KysrCiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkgICB8
ICAgIDQgKystCiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5w
eSAgICB8ICAgMjkgKysrKysrKysrKysrKysrKysrKysKIC4uLi93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9tYWNfdW5pdHRlc3QucHkgICAgIHwgICAxMyArKysrKysrKysKIDUgZmlsZXMgY2hh
bmdlZCwgNzIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1N2NhYTIwLi4zODVlYjQ0IDEwMDY0
NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEs
MjcgQEAKIDIwMTItMDUtMjkgIFN0ZXBoYW5pZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CiAK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3NzE0Cisg
ICAgICAgIE1hYyBjcmFzaCBsb2dzIGNhbiB0YWtlIGEgcmVhbGx5IGxvbmcgdGltZSB0byBiZSB3
cml0dGVuIG91dC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBNYWtlIGEgc2Vjb25kIHBhc3MgbG9va2luZyBmb3IgY3Jhc2ggbG9ncyBhZnRlciB0aGUg
dGVzdHMgaGF2ZSBjb21wbGV0ZWQgcnVubmluZy4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXIucHk6CisgICAgICAgICh1c2VfdHJh
Y19saW5rc19pbl9yZXN1bHRzX2h0bWwpOgorICAgICAgICAoTWFuYWdlci5ydW4pOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAg
KFBvcnQucmVwb3NpdG9yeV9wYXRocyk6CisgICAgICAgIChQb3J0Lmxvb2tfZm9yX25ld19jcmFz
aF9sb2dzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21h
Yy5weToKKyAgICAgICAgKE1hY1BvcnQubG9va19mb3JfbmV3X2NyYXNoX2xvZ3MpOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjX3VuaXR0ZXN0LnB5Ogor
ICAgICAgICAodGVzdF9nZXRfY3Jhc2hfbG9nKToKKyAgICAgICAgKHRlc3RfbG9va19mb3JfbmV3
X2NyYXNoX2xvZ3MpOgorICAgICAgICAodGVzdF9sb29rX2Zvcl9uZXdfY3Jhc2hfbG9ncy5mYWtl
X3RpbWVfY2IpOgorCisyMDEyLTA1LTI5ICBTdGVwaGFuaWUgTGV3aXMgIDxzbGV3aXNAYXBwbGUu
Y29tPgorCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04
NzcxMQogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlci5w
eSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFn
ZXIucHkKaW5kZXggMDQ3Mzc3Yy4uNzU1YTllMyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlci5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5hZ2VyLnB5CkBAIC0x
MDYsNiArMTA2LDcgQEAgZGVmIHVzZV90cmFjX2xpbmtzX2luX3Jlc3VsdHNfaHRtbChwb3J0X29i
aik6CiAgICAgIyBVc2UgZXhpc3RlbmNlIG9mIGJ1aWxkZXJfbmFtZSBhcyBhIHByb3h5IGZvciBr
bm93aW5nIHdlJ3JlIG9uIGEgYm90LgogICAgIHJldHVybiBwb3J0X29iai5nZXRfb3B0aW9uKCJi
dWlsZGVyX25hbWUiKQogCisKICMgRklYTUU6IFRoaXMgc2hvdWxkIGJlIG9uIHRoZSBNYW5hZ2Vy
IGNsYXNzIChzaW5jZSB0aGF0J3MgdGhlIG9ubHkgY2FsbGVyKQogIyBvciBzcGxpdCBvZmYgZnJv
bSBNYW5hZ2VyIG9udG8gYW5vdGhlciBoZWxwZXIgY2xhc3MsIGJ1dCBzaG91bGQgbm90IGJlIGEg
ZnJlZSBmdW5jdGlvbi4KICMgTW9zdCBsaWtlbHkgdGhpcyBzaG91bGQgYmUgbWFkZSBpbnRvIGl0
cyBvd24gY2xhc3MsIGFuZCB0aGlzIHN1cGVyLWxvbmcgZnVuY3Rpb24KQEAgLTkwOSw2ICs5MTAs
MTAgQEAgY2xhc3MgTWFuYWdlcihvYmplY3QpOgogCiAgICAgICAgIGVuZF90aW1lID0gdGltZS50
aW1lKCkKIAorICAgICAgICAjIFNvbWUgY3Jhc2ggbG9ncyBjYW4gdGFrZSBhIGxvbmcgdGltZSB0
byBiZSB3cml0dGVuIG91dCBzbyBsb29rCisgICAgICAgICMgZm9yIG5ldyBsb2dzIGFmdGVyIHRo
ZSB0ZXN0IHJ1biBmaW5pc2hlcy4KKyAgICAgICAgc2VsZi5fcG9ydC5sb29rX2Zvcl9uZXdfY3Jh
c2hfbG9ncyhyZXN1bHRfc3VtbWFyeSwgc3RhcnRfdGltZSkKKyAgICAgICAgc2VsZi5fcG9ydC5s
b29rX2Zvcl9uZXdfY3Jhc2hfbG9ncyhyZXRyeV9zdW1tYXJ5LCBzdGFydF90aW1lKQogICAgICAg
ICBzZWxmLl9jbGVhbl91cF9ydW4oKQogCiAgICAgICAgIHNlbGYuX3ByaW50X3RpbWluZ19zdGF0
aXN0aWNzKGVuZF90aW1lIC0gc3RhcnRfdGltZSwgdGhyZWFkX3RpbWluZ3MsIHRlc3RfdGltaW5n
cywgaW5kaXZpZHVhbF90ZXN0X3RpbWluZ3MsIHJlc3VsdF9zdW1tYXJ5KQpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5IGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CmluZGV4IDY0YWQxMzYu
LmYxM2ZjOGEgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvYmFzZS5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L2Jhc2UucHkKQEAgLTkwNyw3ICs5MDcsNiBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAg
ICAgICMgd2hlcmUgdHVybmsgaXNuJ3QgY2hlY2tlZCBvdXQgYXMgYSB3aG9sZS4KICAgICAgICAg
cmV0dXJuIFsoJ3dlYmtpdCcsIHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpKV0KIAotCiAgICAgX1dE
SUZGX0RFTCA9ICcjI1dESUZGX0RFTCMjJwogICAgIF9XRElGRl9BREQgPSAnIyNXRElGRl9BREQj
IycKICAgICBfV0RJRkZfRU5EID0gJyMjV0RJRkZfRU5EIyMnCkBAIC0xMDg1LDYgKzEwODQsOSBA
QCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgICAgICAnXG4nLmpvaW4oKCdTVERPVVQ6ICcg
KyBsKSBmb3IgbCBpbiBzdGRvdXRfbGluZXMpLAogICAgICAgICAgICAgJ1xuJy5qb2luKCgnU1RE
RVJSOiAnICsgbCkgZm9yIGwgaW4gc3RkZXJyX2xpbmVzKSkKIAorICAgIGRlZiBsb29rX2Zvcl9u
ZXdfY3Jhc2hfbG9ncyhzZWxmLCByZXN1bHRfc3VtbWFyeSwgc3RhcnRfdGltZSk6CisgICAgICAg
IHBhc3MKKwogICAgIGRlZiBzYW1wbGVfcHJvY2VzcyhzZWxmLCBuYW1lLCBwaWQpOgogICAgICAg
ICBwYXNzCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvbWFjLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9t
YWMucHkKaW5kZXggOTUxM2FlNS4uZTdjODJhOCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKQEAgLTMzLDEzICszMywxOSBAQCBpbXBvcnQg
c3VicHJvY2VzcwogaW1wb3J0IHRpbWUKIAogZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmNy
YXNobG9ncyBpbXBvcnQgQ3Jhc2hMb2dzCitmcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy5jb250
cm9sbGVycy50ZXN0X3Jlc3VsdF93cml0ZXIgaW1wb3J0IFRlc3RSZXN1bHRXcml0ZXIKIGZyb20g
d2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCitmcm9t
IHdlYmtpdHB5LmxheW91dF90ZXN0cy5tb2RlbHMgaW1wb3J0IHRlc3RfZXhwZWN0YXRpb25zCitm
cm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy5tb2RlbHMgaW1wb3J0IHRlc3RfZmFpbHVyZXMKK2Zy
b20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLm1vZGVscyBpbXBvcnQgdGVzdF9yZXN1bHRzCitmcm9t
IHdlYmtpdHB5LmxheW91dF90ZXN0cy5tb2RlbHMucmVzdWx0X3N1bW1hcnkgaW1wb3J0IFJlc3Vs
dFN1bW1hcnkKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnBvcnQuYXBwbGUgaW1wb3J0IEFw
cGxlUG9ydAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC5sZWFrZGV0ZWN0b3IgaW1w
b3J0IExlYWtEZXRlY3RvcgogCiAKIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcihfX25hbWVfXykK
IAorCiBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgcG9ydF9uYW1lID0gIm1hYyIKIApA
QCAtMTk5LDYgKzIwNSwyOSBAQCBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgICAgICAg
ICBfbG9nLndhcm5pbmcoY3Jhc2hfbG9nKQogICAgICAgICByZXR1cm4gY3Jhc2hfbG9nCiAKKyAg
ICBkZWYgbG9va19mb3JfbmV3X2NyYXNoX2xvZ3Moc2VsZiwgcmVzdWx0X3N1bW1hcnksIHN0YXJ0
X3RpbWUpOgorICAgICAgICAiIiJTaW5jZSBjcmFzaCBsb2dzIGNhbiB0YWtlIGEgbG9uZyB0aW1l
IHRvIGJlIHdyaXR0ZW4gb3V0IGlmIHRoZSBzeXN0ZW0gaXMKKyAgICAgICAgICAgdW5kZXIgc3Ry
ZXNzIGRvIGEgc2Vjb25kIHBhc3MgYXQgdGhlIGVuZCBvZiB0aGUgdGVzdCBydW4uCisKKyAgICAg
ICAgICAgcmVzdWx0X3N1bW1hcnk6IHRoZSByZXN1bHRzIG9mIHRoZSB0ZXN0IHJ1bgorICAgICAg
ICAgICBzdGFydF90aW1lOiB0aW1lIHRoZSB0ZXN0cyBzdGFydGVkIGF0LiAgV2UncmUgbG9va2lu
ZyBmb3IgY3Jhc2gKKyAgICAgICAgICAgICAgIGxvZ3MgYWZ0ZXIgdGhhdCB0aW1lLgorICAgICAg
ICAiIiIKKyAgICAgICAgZm9yIHRlc3QsIHJlc3VsdCBpbiByZXN1bHRfc3VtbWFyeS51bmV4cGVj
dGVkX3Jlc3VsdHMuaXRlcml0ZW1zKCk6CisgICAgICAgICAgICBpZiAocmVzdWx0LnR5cGUgIT0g
dGVzdF9leHBlY3RhdGlvbnMuQ1JBU0gpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAg
ICAgICAgICBmb3IgZmFpbHVyZSBpbiByZXN1bHQuZmFpbHVyZXM6CisgICAgICAgICAgICAgICAg
aWYgbm90IGlzaW5zdGFuY2UoZmFpbHVyZSwgdGVzdF9mYWlsdXJlcy5GYWlsdXJlQ3Jhc2gpOgor
ICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICMgUGFzc2luZyBO
b25lIGZvciBvdXRwdXQuICBUaGlzIGlzIGEgc2Vjb25kIHBhc3MgYWZ0ZXIgdGhlIHRlc3QgZmlu
aXNoZWQgc28KKyAgICAgICAgICAgICAgICAjIGlmIHRoZSBvdXRwdXQgaGFkIGFueSBsb2dnaW5l
IHdlIHdvdWxkIGhhdmUgYWxyZWFkeSBjb2xsZWN0ZWQgaXQuCisgICAgICAgICAgICAgICAgY3Jh
c2hfbG9nID0gc2VsZi5fZ2V0X2NyYXNoX2xvZyhmYWlsdXJlLnByb2Nlc3NfbmFtZSwgZmFpbHVy
ZS5waWQsIE5vbmUsIE5vbmUsIHN0YXJ0X3RpbWUpCisgICAgICAgICAgICAgICAgaWYgbm90IGNy
YXNoX2xvZzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBp
ZiBub3QgY3Jhc2hfbG9nLnN0YXJ0c3dpdGgoIm5vIik6CisgICAgICAgICAgICAgICAgICAgIHdy
aXRlciA9IFRlc3RSZXN1bHRXcml0ZXIoc2VsZi5fZmlsZXN5c3RlbSwgc2VsZiwgc2VsZi5yZXN1
bHRzX2RpcmVjdG9yeSgpLCB0ZXN0KQorICAgICAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVf
Y3Jhc2hfbG9nKGNyYXNoX2xvZykKKwogICAgIGRlZiBzYW1wbGVfcHJvY2VzcyhzZWxmLCBuYW1l
LCBwaWQpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBoYW5nX3JlcG9ydCA9IHNlbGYuX2Zp
bGVzeXN0ZW0uam9pbihzZWxmLnJlc3VsdHNfZGlyZWN0b3J5KCksICIlcy0lcy5zYW1wbGUudHh0
IiAlIChuYW1lLCBwaWQpKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weQppbmRleCAwYjliY2E5Li40OTdhMGZhIDEw
MDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hY191
bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L21hY191bml0dGVzdC5weQpAQCAtMjYsNiArMjYsOCBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KIAorZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMubW9kZWxzIGltcG9ydCByZXN1
bHRfc3VtbWFyeQorZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMubW9kZWxzIGltcG9ydCB0ZXN0
X2V4cGVjdGF0aW9ucwogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC5tYWMgaW1wb3J0
IE1hY1BvcnQKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnBvcnQgaW1wb3J0IHBvcnRfdGVz
dGNhc2UKIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5maWxlc3lzdGVtX21vY2sgaW1wb3J0
IE1vY2tGaWxlU3lzdGVtCkBAIC0xOTcsNiArMTk5LDE3IEBAIGphdmEvCiAgICAgICAgIHBvcnQg
PSBzZWxmLm1ha2VfcG9ydChwb3J0X25hbWU9J21hYy1zbm93bGVvcGFyZCcpCiAgICAgICAgIHBv
cnQuX2dldF9jcmFzaF9sb2coJ0R1bXBSZW5kZXJUcmVlJywgMTIzNCwgJycsICcnLCAwLAogICAg
ICAgICAgICAgdGltZV9mbj1mYWtlX3RpbWVfY2IoKSwgc2xlZXBfZm49bGFtYmRhIGRlbGF5OiBO
b25lKQorICAgICAgICAgICAgCisgICAgZGVmIHRlc3RfbG9va19mb3JfbmV3X2NyYXNoX2xvZ3Mo
c2VsZik6CisgICAgICAgIGRlZiBmYWtlX3RpbWVfY2IoKToKKyAgICAgICAgICAgIHRpbWVzID0g
WzAsIDIwLCA0MF0KKyAgICAgICAgICAgIHJldHVybiBsYW1iZGE6IHRpbWVzLnBvcCgwKQorICAg
ICAgICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQocG9ydF9uYW1lPSdtYWMtc25vd2xlb3BhcmQnKQor
ICAgICAgICB0ZXN0cyA9IFsnZmFpbHVyZXMvZXhwZWN0ZWQvY3Jhc2guaHRtbCddCisgICAgICAg
IGV4cGVjdGF0aW9ucyA9IHRlc3RfZXhwZWN0YXRpb25zLlRlc3RFeHBlY3RhdGlvbnMocG9ydCwg
dGVzdHMpCisgICAgICAgIHJzID0gcmVzdWx0X3N1bW1hcnkuUmVzdWx0U3VtbWFyeShleHBlY3Rh
dGlvbnMsIHRlc3RzKQorICAgICAgICBwb3J0Ll9nZXRfY3Jhc2hfbG9nKCdEdW1wUmVuZGVyVHJl
ZScsIDEyMzQsICcnLCAnJywgMCwKKyAgICAgICAgICAgIHRpbWVfZm49ZmFrZV90aW1lX2NiKCks
IHNsZWVwX2ZuPWxhbWJkYSBkZWxheTogTm9uZSkKIAogICAgIGRlZiB0ZXN0X2hlbHBlcl9zdGFy
dHMoc2VsZik6CiAgICAgICAgIGhvc3QgPSBNb2NrU3lzdGVtSG9zdChNb2NrRXhlY3V0aXZlKCkp
Ci0tIAoxLjcuOS42IChBcHBsZSBHaXQtMzEpCgo=
</data>
<flag name="review"
          id="151486"
          type_id="1"
          status="-"
          setter="dpranke"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144924</attachid>
            <date>2012-05-30 14:35:08 -0700</date>
            <delta_ts>2012-05-30 14:59:02 -0700</delta_ts>
            <desc>reworked patch</desc>
            <filename>0001-https-bugs.webkit.org-show_bug.cgi-id-87714.patch</filename>
            <type>text/plain</type>
            <size>11997</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">RnJvbSAxNmM4YzkxNGU4ODk3OGFlNjVkNTljZjQ2YTg4OTUwMTA1ZDBhYjk0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVwaGFuaWUgTGV3aXMgPHNsZXdpc0BhcHBsZS5jb20+CkRh
dGU6IFR1ZSwgMjkgTWF5IDIwMTIgMDI6MzE6MjggLTA3MDAKU3ViamVjdDogW1BBVENIIDEvM10g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3NzE0IE1hYyBjcmFzaAog
bG9ncyBjYW4gdGFrZSBhIHJlYWxseSBsb25nIHRpbWUgdG8gYmUgd3JpdHRlbiBvdXQuCgpSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCk1ha2UgYSBzZWNvbmQgcGFzcyBsb29raW5nIGZvciBj
cmFzaCBsb2dzIGFmdGVyIHRoZSB0ZXN0cyBoYXZlIGNvbXBsZXRlZCBydW5uaW5nLgoKKiBTY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5hZ2VyLnB5OgoodXNlX3Ry
YWNfbGlua3NfaW5fcmVzdWx0c19odG1sKToKKE1hbmFnZXIucnVuKToKKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHk6CihQb3J0LnJlcG9zaXRvcnlfcGF0aHMpOgoo
UG9ydC5sb29rX2Zvcl9uZXdfY3Jhc2hfbG9ncyk6CiogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9tYWMucHk6CihNYWNQb3J0Lmxvb2tfZm9yX25ld19jcmFzaF9sb2dzKToKKiBT
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weToKKHRlc3Rf
Z2V0X2NyYXNoX2xvZyk6Cih0ZXN0X2xvb2tfZm9yX25ld19jcmFzaF9sb2dzKToKKHRlc3RfbG9v
a19mb3JfbmV3X2NyYXNoX2xvZ3MuZmFrZV90aW1lX2NiKToKLS0tCiBUb29scy9DaGFuZ2VMb2cg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjIgKysrKysrKysrKysrKysr
CiAuLi4vd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXIucHkgICB8ICAg
MjkgKysrKysrKysrKysrKysrKysrKysKIC4uLi9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFu
YWdlcl91bml0dGVzdC5weSAgIHwgICAxNiArKysrKysrKysrKwogVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5ICAgfCAgICA0ICsrLQogVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkgICAgfCAgIDI4ICsrKysrKysrKysr
KysrKysrLS0KIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0
LnB5IHwgICAgNiArKystCiA2IGZpbGVzIGNoYW5nZWQsIDEwMCBpbnNlcnRpb25zKCspLCA1IGRl
bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxv
ZwppbmRleCBhYzg4ZTFmLi44YTE3ZWM5IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysr
IGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjcgQEAKIDIwMTItMDUtMjkgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CiAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg3NzE0CisgICAgICAgIE1hYyBjcmFzaCBsb2dzIGNhbiB0
YWtlIGEgcmVhbGx5IGxvbmcgdGltZSB0byBiZSB3cml0dGVuIG91dC4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIGEgc2Vjb25kIHBhc3MgbG9v
a2luZyBmb3IgY3Jhc2ggbG9ncyBhZnRlciB0aGUgdGVzdHMgaGF2ZSBjb21wbGV0ZWQgcnVubmlu
Zy4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJz
L21hbmFnZXIucHk6CisgICAgICAgICh1c2VfdHJhY19saW5rc19pbl9yZXN1bHRzX2h0bWwpOgor
ICAgICAgICAoTWFuYWdlci5ydW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAgKFBvcnQucmVwb3NpdG9yeV9wYXRocyk6Cisg
ICAgICAgIChQb3J0Lmxvb2tfZm9yX25ld19jcmFzaF9sb2dzKToKKyAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weToKKyAgICAgICAgKE1hY1BvcnQubG9v
a19mb3JfbmV3X2NyYXNoX2xvZ3MpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvbWFjX3VuaXR0ZXN0LnB5OgorICAgICAgICAodGVzdF9nZXRfY3Jhc2hfbG9n
KToKKyAgICAgICAgKHRlc3RfbG9va19mb3JfbmV3X2NyYXNoX2xvZ3MpOgorICAgICAgICAodGVz
dF9sb29rX2Zvcl9uZXdfY3Jhc2hfbG9ncy5mYWtlX3RpbWVfY2IpOgorCisyMDEyLTA1LTI5ICBT
dGVwaGFuaWUgTGV3aXMgIDxzbGV3aXNAYXBwbGUuY29tPgorCiAgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzcyMAogICAgICAgICBXZWJQcm9jZXNzIGlz
IG9mdGVuIGtpbGxlZCBkdWUgdG8gYmVpbmcgdW5yZXNwb25zaXZlIG9uIHRoZSBib3RzCiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJz
L21hbmFnZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9s
bGVycy9tYW5hZ2VyLnB5CmluZGV4IDA0NzM3N2MuLmU3NjJjZmQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXIucHkKKysr
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdl
ci5weQpAQCAtNDYsNiArNDYsNyBAQCBpbXBvcnQgdGltZQogCiBmcm9tIHdlYmtpdHB5LmxheW91
dF90ZXN0cy5jb250cm9sbGVycyBpbXBvcnQgbWFuYWdlcl93b3JrZXJfYnJva2VyCiBmcm9tIHdl
YmtpdHB5LmxheW91dF90ZXN0cy5jb250cm9sbGVycyBpbXBvcnQgd29ya2VyCitmcm9tIHdlYmtp
dHB5LmxheW91dF90ZXN0cy5jb250cm9sbGVycy50ZXN0X3Jlc3VsdF93cml0ZXIgaW1wb3J0IFRl
c3RSZXN1bHRXcml0ZXIKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLmxheW91dF9wYWNrYWdl
IGltcG9ydCBqc29uX2xheW91dF9yZXN1bHRzX2dlbmVyYXRvcgogZnJvbSB3ZWJraXRweS5sYXlv
dXRfdGVzdHMubGF5b3V0X3BhY2thZ2UgaW1wb3J0IGpzb25fcmVzdWx0c19nZW5lcmF0b3IKIGZy
b20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLm1vZGVscyBpbXBvcnQgdGVzdF9leHBlY3RhdGlvbnMK
QEAgLTEwNiw2ICsxMDcsNyBAQCBkZWYgdXNlX3RyYWNfbGlua3NfaW5fcmVzdWx0c19odG1sKHBv
cnRfb2JqKToKICAgICAjIFVzZSBleGlzdGVuY2Ugb2YgYnVpbGRlcl9uYW1lIGFzIGEgcHJveHkg
Zm9yIGtub3dpbmcgd2UncmUgb24gYSBib3QuCiAgICAgcmV0dXJuIHBvcnRfb2JqLmdldF9vcHRp
b24oImJ1aWxkZXJfbmFtZSIpCiAKKwogIyBGSVhNRTogVGhpcyBzaG91bGQgYmUgb24gdGhlIE1h
bmFnZXIgY2xhc3MgKHNpbmNlIHRoYXQncyB0aGUgb25seSBjYWxsZXIpCiAjIG9yIHNwbGl0IG9m
ZiBmcm9tIE1hbmFnZXIgb250byBhbm90aGVyIGhlbHBlciBjbGFzcywgYnV0IHNob3VsZCBub3Qg
YmUgYSBmcmVlIGZ1bmN0aW9uLgogIyBNb3N0IGxpa2VseSB0aGlzIHNob3VsZCBiZSBtYWRlIGlu
dG8gaXRzIG93biBjbGFzcywgYW5kIHRoaXMgc3VwZXItbG9uZyBmdW5jdGlvbgpAQCAtOTA5LDYg
KzkxMSwxMCBAQCBjbGFzcyBNYW5hZ2VyKG9iamVjdCk6CiAKICAgICAgICAgZW5kX3RpbWUgPSB0
aW1lLnRpbWUoKQogCisgICAgICAgICMgU29tZSBjcmFzaCBsb2dzIGNhbiB0YWtlIGEgbG9uZyB0
aW1lIHRvIGJlIHdyaXR0ZW4gb3V0IHNvIGxvb2sKKyAgICAgICAgIyBmb3IgbmV3IGxvZ3MgYWZ0
ZXIgdGhlIHRlc3QgcnVuIGZpbmlzaGVzLgorICAgICAgICBzZWxmLl9sb29rX2Zvcl9uZXdfY3Jh
c2hfbG9ncyhyZXN1bHRfc3VtbWFyeSwgc3RhcnRfdGltZSkKKyAgICAgICAgc2VsZi5fbG9va19m
b3JfbmV3X2NyYXNoX2xvZ3MocmV0cnlfc3VtbWFyeSwgc3RhcnRfdGltZSkKICAgICAgICAgc2Vs
Zi5fY2xlYW5fdXBfcnVuKCkKIAogICAgICAgICBzZWxmLl9wcmludF90aW1pbmdfc3RhdGlzdGlj
cyhlbmRfdGltZSAtIHN0YXJ0X3RpbWUsIHRocmVhZF90aW1pbmdzLCB0ZXN0X3RpbWluZ3MsIGlu
ZGl2aWR1YWxfdGVzdF90aW1pbmdzLCByZXN1bHRfc3VtbWFyeSkKQEAgLTk3MCw2ICs5NzYsMjkg
QEAgY2xhc3MgTWFuYWdlcihvYmplY3QpOgogICAgICAgICBfbG9nLmRlYnVnKCJjbGVhbmluZyB1
cCBwb3J0IikKICAgICAgICAgc2VsZi5fcG9ydC5jbGVhbl91cF90ZXN0X3J1bigpCiAKKyAgICBk
ZWYgX2xvb2tfZm9yX25ld19jcmFzaF9sb2dzKHNlbGYsIHJlc3VsdF9zdW1tYXJ5LCBzdGFydF90
aW1lKToKKyAgICAgICAgIiIiU2luY2UgY3Jhc2ggbG9ncyBjYW4gdGFrZSBhIGxvbmcgdGltZSB0
byBiZSB3cml0dGVuIG91dCBpZiB0aGUgc3lzdGVtIGlzCisgICAgICAgICAgIHVuZGVyIHN0cmVz
cyBkbyBhIHNlY29uZCBwYXNzIGF0IHRoZSBlbmQgb2YgdGhlIHRlc3QgcnVuLgorCisgICAgICAg
ICAgIHJlc3VsdF9zdW1tYXJ5OiB0aGUgcmVzdWx0cyBvZiB0aGUgdGVzdCBydW4KKyAgICAgICAg
ICAgc3RhcnRfdGltZTogdGltZSB0aGUgdGVzdHMgc3RhcnRlZCBhdC4gIFdlJ3JlIGxvb2tpbmcg
Zm9yIGNyYXNoCisgICAgICAgICAgICAgICBsb2dzIGFmdGVyIHRoYXQgdGltZS4KKyAgICAgICAg
IiIiCisgICAgICAgIGNyYXNoZWRfcHJvY2Vzc2VzID0gW10KKyAgICAgICAgZm9yIHRlc3QsIHJl
c3VsdCBpbiByZXN1bHRfc3VtbWFyeS51bmV4cGVjdGVkX3Jlc3VsdHMuaXRlcml0ZW1zKCk6Cisg
ICAgICAgICAgICBpZiAocmVzdWx0LnR5cGUgIT0gdGVzdF9leHBlY3RhdGlvbnMuQ1JBU0gpOgor
ICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBmb3IgZmFpbHVyZSBpbiByZXN1
bHQuZmFpbHVyZXM6CisgICAgICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZmFpbHVyZSwg
dGVzdF9mYWlsdXJlcy5GYWlsdXJlQ3Jhc2gpOgorICAgICAgICAgICAgICAgICAgICBjb250aW51
ZQorICAgICAgICAgICAgICAgIGNyYXNoZWRfcHJvY2Vzc2VzLmFwcGVuZChbdGVzdCwgZmFpbHVy
ZS5wcm9jZXNzX25hbWUsIGZhaWx1cmUucGlkXSkKKworICAgICAgICBjcmFzaF9sb2dzID0gc2Vs
Zi5fcG9ydC5sb29rX2Zvcl9uZXdfY3Jhc2hfbG9ncyhjcmFzaGVkX3Byb2Nlc3Nlcywgc3RhcnRf
dGltZSkKKyAgICAgICAgaWYgY3Jhc2hfbG9nczoKKyAgICAgICAgICAgIGZvciB0ZXN0LCBjcmFz
aF9sb2cgaW4gY3Jhc2hfbG9ncy5pdGVyaXRlbXMoKToKKyAgICAgICAgICAgICAgICB3cml0ZXIg
PSBUZXN0UmVzdWx0V3JpdGVyKHNlbGYuX3BvcnQuX2ZpbGVzeXN0ZW0sIHNlbGYuX3BvcnQsIHNl
bGYuX3BvcnQucmVzdWx0c19kaXJlY3RvcnkoKSwgdGVzdCkKKyAgICAgICAgICAgICAgICB3cml0
ZXIud3JpdGVfY3Jhc2hfbG9nKGNyYXNoX2xvZykKKwogICAgIGRlZiB1cGRhdGVfc3VtbWFyeShz
ZWxmLCByZXN1bHRfc3VtbWFyeSk6CiAgICAgICAgICIiIlVwZGF0ZSB0aGUgc3VtbWFyeSBhbmQg
cHJpbnQgcmVzdWx0cyB3aXRoIGFueSBjb21wbGV0ZWQgdGVzdHMuIiIiCiAgICAgICAgIHdoaWxl
IFRydWU6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9j
b250cm9sbGVycy9tYW5hZ2VyX3VuaXR0ZXN0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdlcl91bml0dGVzdC5weQppbmRleCA2M2UxOGFj
Li4zZGRhYjhlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9jb250cm9sbGVycy9tYW5hZ2VyX3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXJfdW5pdHRlc3QucHkKQEAgLTMy
LDYgKzMyLDcgQEAKIAogaW1wb3J0IFN0cmluZ0lPCiBpbXBvcnQgc3lzCitpbXBvcnQgdGltZQog
aW1wb3J0IHVuaXR0ZXN0CiAKIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5maWxlc3lzdGVt
X21vY2sgaW1wb3J0IE1vY2tGaWxlU3lzdGVtCkBAIC0zMjYsNiArMzI3LDIxIEBAIGNsYXNzIE1h
bmFnZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgIG1hbmFnZXIgPSBnZXRf
bWFuYWdlcl93aXRoX3Rlc3RzKFsnaHR0cFxcdGVzdHNcXG1pbWUnXSkKICAgICAgICAgICAgIHNl
bGYuYXNzZXJ0VHJ1ZShtYW5hZ2VyLm5lZWRzX3NlcnZlcnMoKSkKIAorICAgIGRlZiB0ZXN0X2xv
b2tfZm9yX25ld19jcmFzaF9sb2dzKHNlbGYpOgorICAgICAgICBkZWYgZ2V0X21hbmFnZXJfd2l0
aF90ZXN0cyh0ZXN0X25hbWVzKToKKyAgICAgICAgICAgIGhvc3QgPSBNb2NrSG9zdCgpCisgICAg
ICAgICAgICBwb3J0ID0gaG9zdC5wb3J0X2ZhY3RvcnkuZ2V0KCd0ZXN0LW1hYy1sZW9wYXJkJykK
KyAgICAgICAgICAgIG1hbmFnZXIgPSBNYW5hZ2VyKHBvcnQsIG9wdGlvbnM9TW9ja09wdGlvbnMo
dGVzdF9saXN0PU5vbmUsIGh0dHA9VHJ1ZSksIHByaW50ZXI9TW9jaygpKQorICAgICAgICAgICAg
bWFuYWdlci5jb2xsZWN0X3Rlc3RzKHRlc3RfbmFtZXMpCisgICAgICAgICAgICByZXR1cm4gbWFu
YWdlcgorICAgICAgICBob3N0ID0gTW9ja0hvc3QoKQorICAgICAgICBwb3J0ID0gaG9zdC5wb3J0
X2ZhY3RvcnkuZ2V0KCd0ZXN0LW1hYy1sZW9wYXJkJykKKyAgICAgICAgdGVzdHMgPSBbJ2ZhaWx1
cmVzL2V4cGVjdGVkL2NyYXNoLmh0bWwnXQorICAgICAgICBleHBlY3RhdGlvbnMgPSB0ZXN0X2V4
cGVjdGF0aW9ucy5UZXN0RXhwZWN0YXRpb25zKHBvcnQsIHRlc3RzKQorICAgICAgICBycyA9IHJl
c3VsdF9zdW1tYXJ5LlJlc3VsdFN1bW1hcnkoZXhwZWN0YXRpb25zLCB0ZXN0cykKKyAgICAgICAg
bWFuYWdlciA9IGdldF9tYW5hZ2VyX3dpdGhfdGVzdHModGVzdHMpCisgICAgICAgIG1hbmFnZXIu
X2xvb2tfZm9yX25ld19jcmFzaF9sb2dzKHJzLCB0aW1lLnRpbWUoKSkKKwogCiBjbGFzcyBOYXR1
cmFsQ29tcGFyZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBhc3NlcnRfY21wKHNl
bGYsIHgsIHksIHJlc3VsdCk6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2Jhc2UucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L2Jhc2UucHkKaW5kZXggNjRhZDEzNi4uYzI5OGIxYiAxMDA3NTUKLS0tIGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQpAQCAtOTA3LDcgKzkw
Nyw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgIyB3aGVyZSB0dXJuayBpc24ndCBj
aGVja2VkIG91dCBhcyBhIHdob2xlLgogICAgICAgICByZXR1cm4gWygnd2Via2l0Jywgc2VsZi5s
YXlvdXRfdGVzdHNfZGlyKCkpXQogCi0KICAgICBfV0RJRkZfREVMID0gJyMjV0RJRkZfREVMIyMn
CiAgICAgX1dESUZGX0FERCA9ICcjI1dESUZGX0FERCMjJwogICAgIF9XRElGRl9FTkQgPSAnIyNX
RElGRl9FTkQjIycKQEAgLTEwODUsNiArMTA4NCw5IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAg
ICAgICAgICAgICdcbicuam9pbigoJ1NURE9VVDogJyArIGwpIGZvciBsIGluIHN0ZG91dF9saW5l
cyksCiAgICAgICAgICAgICAnXG4nLmpvaW4oKCdTVERFUlI6ICcgKyBsKSBmb3IgbCBpbiBzdGRl
cnJfbGluZXMpKQogCisgICAgZGVmIGxvb2tfZm9yX25ld19jcmFzaF9sb2dzKHNlbGYsIGNyYXNo
ZWRfcHJvY2Vzc2VzLCBzdGFydF90aW1lKToKKyAgICAgICAgcGFzcworCiAgICAgZGVmIHNhbXBs
ZV9wcm9jZXNzKHNlbGYsIG5hbWUsIHBpZCk6CiAgICAgICAgIHBhc3MKIApkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weQppbmRleCA4NTUyMTc2Li4z
YmY5MjY5IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L21hYy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L21hYy5weQpAQCAtNDEsNiArNDEsNyBAQCBmcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy5wb3J0
LmxlYWtkZXRlY3RvciBpbXBvcnQgTGVha0RldGVjdG9yCiAKIF9sb2cgPSBsb2dnaW5nLmdldExv
Z2dlcihfX25hbWVfXykKIAorCiBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgcG9ydF9u
YW1lID0gIm1hYyIKIApAQCAtMTc3LDcgKzE3OCw3IEBAIGNsYXNzIE1hY1BvcnQoQXBwbGVQb3J0
KToKICAgICBkZWYgcmVsZWFzZV9odHRwX2xvY2soc2VsZik6CiAgICAgICAgIHBhc3MKIAotICAg
IGRlZiBfZ2V0X2NyYXNoX2xvZyhzZWxmLCBuYW1lLCBwaWQsIHN0ZG91dCwgc3RkZXJyLCBuZXdl
cl90aGFuLCB0aW1lX2ZuPU5vbmUsIHNsZWVwX2ZuPU5vbmUpOgorICAgIGRlZiBfZ2V0X2NyYXNo
X2xvZyhzZWxmLCBuYW1lLCBwaWQsIHN0ZG91dCwgc3RkZXJyLCBuZXdlcl90aGFuLCB0aW1lX2Zu
PU5vbmUsIHNsZWVwX2ZuPU5vbmUsIHdhaXRfZm9yX2xvZz1UcnVlKToKICAgICAgICAgIyBOb3Rl
IHRoYXQgd2UgZG8gc2xvdy1zcGluIGhlcmUgYW5kIHdhaXQsIHNpbmNlIGl0IGFwcGVhcnMgdGhl
IHRpbWUKICAgICAgICAgIyBSZXBvcnRDcmFzaCB0YWtlcyB0byBhY3R1YWxseSB3cml0ZSBhbmQg
Zmx1c2ggdGhlIGZpbGUgdmFyaWVzIHdoZW4gdGhlcmUgYXJlCiAgICAgICAgICMgbG90cyBvZiBz
aW11bHRhbmVvdXMgY3Jhc2hlcyBnb2luZyBvbi4KQEAgLTE5MiwxNCArMTkzLDM1IEBAIGNsYXNz
IE1hY1BvcnQoQXBwbGVQb3J0KToKICAgICAgICAgZGVhZGxpbmUgPSBub3cgKyA1ICogaW50KHNl
bGYuZ2V0X29wdGlvbignY2hpbGRfcHJvY2Vzc2VzJywgMSkpCiAgICAgICAgIHdoaWxlIG5vdCBj
cmFzaF9sb2cgYW5kIG5vdyA8PSBkZWFkbGluZToKICAgICAgICAgICAgIGNyYXNoX2xvZyA9IGNy
YXNoX2xvZ3MuZmluZF9uZXdlc3RfbG9nKG5hbWUsIHBpZCwgaW5jbHVkZV9lcnJvcnM9VHJ1ZSwg
bmV3ZXJfdGhhbj1uZXdlcl90aGFuKQorICAgICAgICAgICAgaWYgbm90IHdhaXRfZm9yX2xvZzoK
KyAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgaWYgbm90IGNyYXNoX2xvZyBvciBu
b3QgW2xpbmUgZm9yIGxpbmUgaW4gY3Jhc2hfbG9nLnNwbGl0bGluZXMoKSBpZiBub3QgbGluZS5z
dGFydHN3aXRoKCdFUlJPUicpXToKICAgICAgICAgICAgICAgICBzbGVlcF9mbigwLjEpCiAgICAg
ICAgICAgICAgICAgbm93ID0gdGltZV9mbigpCisKICAgICAgICAgaWYgbm90IGNyYXNoX2xvZzoK
LSAgICAgICAgICAgIGNyYXNoX2xvZyA9ICdubyBjcmFzaCBsb2cgZm91bmQgZm9yICVzOiVkJyAl
IChuYW1lLCBwaWQpCi0gICAgICAgICAgICBfbG9nLndhcm5pbmcoY3Jhc2hfbG9nKQorICAgICAg
ICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgICAgIF9sb2cud2FybmluZygnbm8gY3Jhc2ggbG9n
IGZvdW5kIGZvciAlczolZCcgJSAoc2VsZi5fY3Jhc2hlZF9wcm9jZXNzX25hbWUsIHNlbGYuX2Ny
YXNoZWRfcGlkKSkKICAgICAgICAgcmV0dXJuIGNyYXNoX2xvZwogCisgICAgZGVmIGxvb2tfZm9y
X25ld19jcmFzaF9sb2dzKHNlbGYsIGNyYXNoZWRfcHJvY2Vzc2VzLCBzdGFydF90aW1lKToKKyAg
ICAgICAgIiIiU2luY2UgY3Jhc2ggbG9ncyBjYW4gdGFrZSBhIGxvbmcgdGltZSB0byBiZSB3cml0
dGVuIG91dCBpZiB0aGUgc3lzdGVtIGlzCisgICAgICAgICAgIHVuZGVyIHN0cmVzcyBkbyBhIHNl
Y29uZCBwYXNzIGF0IHRoZSBlbmQgb2YgdGhlIHRlc3QgcnVuLgorCisgICAgICAgICAgIGNyYXNo
ZXM6IHRlc3RfbmFtZSAtPiBwaWQsIHByb2Nlc3NfbmFtZSB0dXBsZSBvZiBjcmFzaGVkIHByb2Nl
c3MKKyAgICAgICAgICAgc3RhcnRfdGltZTogdGltZSB0aGUgdGVzdHMgc3RhcnRlZCBhdC4gIFdl
J3JlIGxvb2tpbmcgZm9yIGNyYXNoCisgICAgICAgICAgICAgICBsb2dzIGFmdGVyIHRoYXQgdGlt
ZS4KKyAgICAgICAgIiIiCisgICAgICAgIGNyYXNoX2xvZ3MgPSB7fQorICAgICAgICBmb3IgKHRl
c3RfbmFtZSwgcHJvY2Vzc19uYW1lLCBwaWQpIGluIGNyYXNoZWRfcHJvY2Vzc2VzOgorICAgICAg
ICAgICAgIyBQYXNzaW5nIE5vbmUgZm9yIG91dHB1dC4gIFRoaXMgaXMgYSBzZWNvbmQgcGFzcyBh
ZnRlciB0aGUgdGVzdCBmaW5pc2hlZCBzbworICAgICAgICAgICAgIyBpZiB0aGUgb3V0cHV0IGhh
ZCBhbnkgbG9nZ2luZSB3ZSB3b3VsZCBoYXZlIGFscmVhZHkgY29sbGVjdGVkIGl0LgorICAgICAg
ICAgICAgY3Jhc2hfbG9nID0gc2VsZi5fZ2V0X2NyYXNoX2xvZyhwcm9jZXNzX25hbWUsIHBpZCwg
Tm9uZSwgTm9uZSwgc3RhcnRfdGltZSwgd2FpdF9mb3JfbG9nPUZhbHNlKQorICAgICAgICAgICAg
aWYgbm90IGNyYXNoX2xvZzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAg
Y3Jhc2hfbG9nc1t0ZXN0X25hbWVdID0gY3Jhc2hfbG9nCisgICAgICAgIHJldHVybiBjcmFzaF9s
b2dzCisKICAgICBkZWYgc2FtcGxlX3Byb2Nlc3Moc2VsZiwgbmFtZSwgcGlkKToKICAgICAgICAg
dHJ5OgogICAgICAgICAgICAgaGFuZ19yZXBvcnQgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2Vs
Zi5yZXN1bHRzX2RpcmVjdG9yeSgpLCAiJXMtJXMuc2FtcGxlLnR4dCIgJSAobmFtZSwgcGlkKSkK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Vi
a2l0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQu
cHkKaW5kZXggZDc5ODAzOS4uZjljYWFkNSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkKQEAgLTU3MywxMSArNTczLDE1IEBAIGNs
YXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICAjIEZJWE1FOiBXZSBtYXkgbmVlZCB0
byBhbHNvIHJlYWQgc3RkZXJyIHVudGlsIHRoZSBwcm9jZXNzIGRpZXM/CiAgICAgICAgIHNlbGYu
ZXJyb3JfZnJvbV90ZXN0ICs9IHNlbGYuX3NlcnZlcl9wcm9jZXNzLnBvcF9hbGxfYnVmZmVyZWRf
c3RkZXJyKCkKIAotICAgICAgICBjcmFzaF9sb2cgPSAnJworICAgICAgICBjcmFzaF9sb2cgPSBO
b25lCiAgICAgICAgIGlmIHNlbGYuaGFzX2NyYXNoZWQoKToKICAgICAgICAgICAgIGNyYXNoX2xv
ZyA9IHNlbGYuX3BvcnQuX2dldF9jcmFzaF9sb2coc2VsZi5fY3Jhc2hlZF9wcm9jZXNzX25hbWUs
IHNlbGYuX2NyYXNoZWRfcGlkLCB0ZXh0LCBzZWxmLmVycm9yX2Zyb21fdGVzdCwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3ZXJfdGhhbj1zdGFy
dF90aW1lKQogCisgICAgICAgICAgICAjIElmIHdlIGRvbid0IGZpbmQgYSBjcmFzaCBsb2cgdXNl
IGEgcGxhY2Vob2xkZXIgZXJyb3IgbWVzc2FnZSBpbnN0ZWFkLgorICAgICAgICAgICAgaWYgbm90
IGNyYXNoX2xvZzoKKyAgICAgICAgICAgICAgICBjcmFzaF9sb2cgPSAnbm8gY3Jhc2ggbG9nIGZv
dW5kIGZvciAlczolZC4nICUgKHNlbGYuX2NyYXNoZWRfcHJvY2Vzc19uYW1lLCBzZWxmLl9jcmFz
aGVkX3BpZCkKKwogICAgICAgICB0aW1lb3V0ID0gc2VsZi5fc2VydmVyX3Byb2Nlc3MudGltZWRf
b3V0CiAgICAgICAgIGlmIHRpbWVvdXQ6CiAgICAgICAgICAgICAjIERSVCBkb2Vzbid0IGhhdmUg
YSBidWlsdCBpbiB0aW1lciB0byBhYm9ydCB0aGUgdGVzdCwgc28gd2UgbWlnaHQgYXMgd2VsbAot
LSAKMS43LjkuNiAoQXBwbGUgR2l0LTMxKQoK
</data>
<flag name="review"
          id="151924"
          type_id="1"
          status="+"
          setter="dpranke"
    />
          </attachment>
      

    </bug>

</bugzilla>