<?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>112409</bug_id>
          
          <creation_ts>2013-03-14 23:03:03 -0700</creation_ts>
          <short_desc>Collect samples for unresponsive web processes</short_desc>
          <delta_ts>2013-03-15 15:08:35 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>slewis</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>855718</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-03-14 23:03:03 -0700</bug_when>
    <thetext>Collect samples for unresponsive web processes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855722</commentid>
    <comment_count>1</comment_count>
      <attachid>193239</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-03-14 23:08:54 -0700</bug_when>
    <thetext>Created attachment 193239
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855724</commentid>
    <comment_count>2</comment_count>
      <attachid>193239</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-03-14 23:15:18 -0700</bug_when>
    <thetext>Comment on attachment 193239
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:172
&gt; +        self._write_text_file(filename, self._filesystem.read_text_file(sample_file))

_filesystem.copyfile?

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:190
&gt; +        return self._filesystem.join(self.results_directory(), &quot;%s-%s-sample.txt&quot; % (name, pid))

%-formatting is deprecated (or at least frowned upon, I&apos;m not sure). I see a lot of it around, but &quot;{0}-{1}-sample.txt&quot;.format(name, pid) is the way of the future. Less magic syntax ftw.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855725</commentid>
    <comment_count>3</comment_count>
      <attachid>193239</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-03-14 23:17:16 -0700</bug_when>
    <thetext>Comment on attachment 193239
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:1347
&gt; +        pass

We probably need to return [] here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855727</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-03-14 23:18:15 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 193239 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=193239&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:1347
&gt; &gt; +        pass
&gt; 
&gt; We probably need to return [] here.

Nah, the caller tests for Noneness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856131</commentid>
    <comment_count>5</comment_count>
      <attachid>193239</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2013-03-15 11:28:23 -0700</bug_when>
    <thetext>Comment on attachment 193239
Patch

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

&gt;&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:1347
&gt;&gt;&gt; +        pass
&gt;&gt; 
&gt;&gt; We probably need to return [] here.
&gt; 
&gt; Nah, the caller tests for Noneness.

Still, it&apos;s very unidiomatic python code (in my experience at least) to not explicitly return *something* and rely on the implicit None. It&apos;s easy to mistake this for a mistake, so we should change this to either &apos;return {}&apos; or &apos;return None&apos;.

&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:190
&gt;&gt; +        return self._filesystem.join(self.results_directory(), &quot;%s-%s-sample.txt&quot; % (name, pid))
&gt; 
&gt; %-formatting is deprecated (or at least frowned upon, I&apos;m not sure). I see a lot of it around, but &quot;{0}-{1}-sample.txt&quot;.format(name, pid) is the way of the future. Less magic syntax ftw.

I don&apos;t think either of these statements is true in Python 2.x code; certainly we use % args way way more than {} args in webkitpy. I have no objection to the {} syntax, but I wouldn&apos;t require it at this time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856140</commentid>
    <comment_count>6</comment_count>
      <attachid>193239</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-03-15 11:32:42 -0700</bug_when>
    <thetext>Comment on attachment 193239
Patch

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

&gt;&gt;&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:1347
&gt;&gt;&gt;&gt; +        pass
&gt;&gt;&gt; 
&gt;&gt;&gt; We probably need to return [] here.
&gt;&gt; 
&gt;&gt; Nah, the caller tests for Noneness.
&gt; 
&gt; Still, it&apos;s very unidiomatic python code (in my experience at least) to not explicitly return *something* and rely on the implicit None. It&apos;s easy to mistake this for a mistake, so we should change this to either &apos;return {}&apos; or &apos;return None&apos;.

If we change this for *that* reason, then we should change the others nearby too :|</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856149</commentid>
    <comment_count>7</comment_count>
      <attachid>193239</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2013-03-15 11:47:03 -0700</bug_when>
    <thetext>Comment on attachment 193239
Patch

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

&gt;&gt;&gt;&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:1347
&gt;&gt;&gt;&gt;&gt; +        pass
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; We probably need to return [] here.
&gt;&gt;&gt; 
&gt;&gt;&gt; Nah, the caller tests for Noneness.
&gt;&gt; 
&gt;&gt; Still, it&apos;s very unidiomatic python code (in my experience at least) to not explicitly return *something* and rely on the implicit None. It&apos;s easy to mistake this for a mistake, so we should change this to either &apos;return {}&apos; or &apos;return None&apos;.
&gt; 
&gt; If we change this for *that* reason, then we should change the others nearby too :|

Yes. I wasn&apos;t aware that there were many other places doing this.

Also, since there&apos;s no type declarations in Python and WebKit is rather un-comment/docstring-friendly, not returning a value gives you no indication that the method is supposed to return anything, which makes it hard to tell what subclasses should implement.

Also also -- since I&apos;m just noticing this -- this change should have at least some basic unit tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856156</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-03-15 11:53:12 -0700</bug_when>
    <thetext>I don&apos;t think we need a test for this. It&apos;s a temporary measure to get samples to diagnose unresponsive WebProcesses we see on bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856187</commentid>
    <comment_count>9</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2013-03-15 12:22:42 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; I don&apos;t think we need a test for this. It&apos;s a temporary measure to get samples to diagnose unresponsive WebProcesses we see on bots.

What makes you think that this is a temporary need? I don&apos;t see anything in this bug (or the patch) indicating that this is intended to be temporary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856322</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-03-15 15:08:35 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/145916</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193239</attachid>
            <date>2013-03-14 23:08:54 -0700</date>
            <delta_ts>2013-03-15 11:47:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112409-20130314230450.patch</filename>
            <type>text/plain</type>
            <size>9730</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NzM4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYTAxOGI3NWY3M2Q1MGI0NzE0Y2ZiZTQ0NWU3NmViZDkx
YmI1YjhjNC4uNDI3ZTdiODA4NWZkMmRiYWI5OGY3ZDgyMjU2YTU5ZmEwMGI4NjkxNSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2
IEBACisyMDEzLTAzLTE0ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgor
CisgICAgICAgIENvbGxlY3Qgc2FtcGxlcyBmb3IgdW5yZXNwb25zaXZlIHdlYiBwcm9jZXNzZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjQwOQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAg
V2hlbiB3ZSBkZXRlY3QgdGhhdCBhIHN1YnByb2Nlc3Mgd2FzIHVucmVzcG9uc2l2ZSwgcnVuIHRo
ZSAnc2FtcGxlJworICAgICAgICB0b29sIG9uIHRoYXQgcHJvY2VzcywgZm9yIHRoZSBNYWMgcG9y
dC4KKyAgICAgICAgCisgICAgICAgIFRoZSBzYW1wbGUgd2lsbCBiZSBsaW5rZWQgdG8gZnJvbSB0
aGUgcmVzdWx0cy5odG1sIHBhZ2UsIG5leHQKKyAgICAgICAgdG8gdGhlIGNyYXNoIGxvZyBsaW5r
LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMv
bWFuYWdlci5weToKKyAgICAgICAgKE1hbmFnZXIuX2xvb2tfZm9yX25ld19jcmFzaF9sb2dzKTog
QmVmb3JlIGxvb2tpbmcgZm9yIGNyYXNoIGxvZ3MsCisgICAgICAgIGxvb2sgZm9yIHNhbXBsZXMg
b24gZGlzay4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9s
bGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHk6CisgICAgICAgIChUZXN0UmVzdWx0V3JpdGVyKToK
KyAgICAgICAgKFRlc3RSZXN1bHRXcml0ZXIuY29weV9zYW1wbGVfZmlsZSk6IFRlYWNoIFRlc3RS
ZXN1bHRXcml0ZXIgYWJvdXQKKyAgICAgICAgLXNhbXBsZS50eHQgZmlsZXMsIGFuZCBoYXZlIGl0
IGNvcHkgdGhlaXIgY29udGVudHMgdG8gYSBuZXcgZmlsZQorICAgICAgICBuZXh0IHRvIHRoZSB0
ZXN0IHRoYXQgc3Bhd25lZCB0aGVtIChhcyB3ZSBkbyBmb3IgY3Jhc2ggbG9ncykuCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAo
UG9ydC5sb29rX2Zvcl9uZXdfc2FtcGxlcyk6IEJhc2UgY2xhc3MgZG9lcyBub3RoaW5nIGZvciBz
YW1wbGluZy4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Ry
aXZlci5weToKKyAgICAgICAgKERyaXZlci5fY2hlY2tfZm9yX2RyaXZlcl9jcmFzaCk6IEtpY2sg
b2ZmIGEgc2FtcGxlIGlmIHdlIGRldGVjdGVkCisgICAgICAgIHRoYXQgdGhlIHN1YnByb2Nlc3Mg
d2FzIHVucmVzcG9uc2l2ZS4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L21hYy5weToKKyAgICAgICAgKE1hY1BvcnQuc2FtcGxlX2ZpbGVfcGF0aCk6IFV0aWxp
dHkgdG8gZ2VuZXJhdGUgdGhlIGZpbGUgcGF0aAorICAgICAgICB0byB0aGUgZ2VuZXJhdGVkIHNh
bXBsZSBmaWxlcyBhdCB0aGUgdG9wIGxldmVsIG9mIGxheW91dC10ZXN0LXJlc3VsdHMuCisgICAg
ICAgIChNYWNQb3J0Lmxvb2tfZm9yX25ld19jcmFzaF9sb2dzKTogRml4IHR5cG8KKyAgICAgICAg
KE1hY1BvcnQubG9va19mb3JfbmV3X3NhbXBsZXMpOiBOZXcgZnVuY3Rpb24gdG8gZmluZCBzYW1w
bGUgZmlsZXMuCisgICAgICAgIChNYWNQb3J0LnNhbXBsZV9wcm9jZXNzKTogVXNlIHRoZSB1dGls
aXR5IGZ1bmN0aW9uIHRvIGdldCB0aGUgZmlsZSBwYXRoLgorCiAyMDEzLTAzLTEzICBTaW1vbiBI
YXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQGRpZ2lhLmNvbT4KIAogICAgICAgICBbUXRdIFBvcnQg
VGVzdFJ1bm5lcjo6ZmluZFN0cmluZyB0byBzaGFyZWQgaW50ZXJmYWNlCmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5hZ2VyLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvbWFuYWdl
ci5weQppbmRleCA5NDFlYWNhZTkyNGI3ZjMxNWJiNzlkM2NkMzRkNzcyYTg2Njg2NDRiLi4xNmU4
NWM4ZGJkYjI5ZjdmMWVhY2E2MmQzNGZlYWJjM2M4MjIzNDQzIDEwMDY0NAotLS0gYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy9tYW5hZ2VyLnB5CisrKyBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL21hbmFnZXIu
cHkKQEAgLTI3NCw2ICsyNzQsMTIgQEAgY2xhc3MgTWFuYWdlcihvYmplY3QpOgogICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgIGNyYXNoZWRfcHJvY2Vzc2VzLmFw
cGVuZChbdGVzdCwgZmFpbHVyZS5wcm9jZXNzX25hbWUsIGZhaWx1cmUucGlkXSkKIAorICAgICAg
ICBzYW1wbGVfZmlsZXMgPSBzZWxmLl9wb3J0Lmxvb2tfZm9yX25ld19zYW1wbGVzKGNyYXNoZWRf
cHJvY2Vzc2VzLCBzdGFydF90aW1lKQorICAgICAgICBpZiBzYW1wbGVfZmlsZXM6CisgICAgICAg
ICAgICBmb3IgdGVzdCwgc2FtcGxlX2ZpbGUgaW4gc2FtcGxlX2ZpbGVzLml0ZXJpdGVtcygpOgor
ICAgICAgICAgICAgICAgIHdyaXRlciA9IFRlc3RSZXN1bHRXcml0ZXIoc2VsZi5fcG9ydC5fZmls
ZXN5c3RlbSwgc2VsZi5fcG9ydCwgc2VsZi5fcG9ydC5yZXN1bHRzX2RpcmVjdG9yeSgpLCB0ZXN0
KQorICAgICAgICAgICAgICAgIHdyaXRlci5jb3B5X3NhbXBsZV9maWxlKHNhbXBsZV9maWxlKQor
CiAgICAgICAgIGNyYXNoX2xvZ3MgPSBzZWxmLl9wb3J0Lmxvb2tfZm9yX25ld19jcmFzaF9sb2dz
KGNyYXNoZWRfcHJvY2Vzc2VzLCBzdGFydF90aW1lKQogICAgICAgICBpZiBjcmFzaF9sb2dzOgog
ICAgICAgICAgICAgZm9yIHRlc3QsIGNyYXNoX2xvZyBpbiBjcmFzaF9sb2dzLml0ZXJpdGVtcygp
OgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJv
bGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5CmluZGV4IGJlMTc4YWIz
MjgyYTVjM2UyYjYwNmI1NDIyNGVmNzQxNDMxZTUwMDEuLmNiOTdhZmIyMWJhMWRkN2I0ZDBjYmM1
MDIwNDQ1NmNlODM5ODQ1YWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0
ZXIucHkKQEAgLTkyLDYgKzkyLDcgQEAgY2xhc3MgVGVzdFJlc3VsdFdyaXRlcihvYmplY3QpOgog
ICAgIEZJTEVOQU1FX1NVRkZJWF9ESUZGID0gIi1kaWZmIgogICAgIEZJTEVOQU1FX1NVRkZJWF9T
VERFUlIgPSAiLXN0ZGVyciIKICAgICBGSUxFTkFNRV9TVUZGSVhfQ1JBU0hfTE9HID0gIi1jcmFz
aC1sb2ciCisgICAgRklMRU5BTUVfU1VGRklYX1NBTVBMRSA9ICItc2FtcGxlIgogICAgIEZJTEVO
QU1FX1NVRkZJWF9XRElGRiA9ICItd2RpZmYuaHRtbCIKICAgICBGSUxFTkFNRV9TVUZGSVhfUFJF
VFRZX1BBVENIID0gIi1wcmV0dHktZGlmZi5odG1sIgogICAgIEZJTEVOQU1FX1NVRkZJWF9JTUFH
RV9ESUZGID0gIi1kaWZmLnBuZyIKQEAgLTE2Niw2ICsxNjcsMTAgQEAgY2xhc3MgVGVzdFJlc3Vs
dFdyaXRlcihvYmplY3QpOgogICAgICAgICBmaWxlbmFtZSA9IHNlbGYub3V0cHV0X2ZpbGVuYW1l
KHNlbGYuRklMRU5BTUVfU1VGRklYX0NSQVNIX0xPRyArICIudHh0IikKICAgICAgICAgc2VsZi5f
d3JpdGVfdGV4dF9maWxlKGZpbGVuYW1lLCBjcmFzaF9sb2cpCiAKKyAgICBkZWYgY29weV9zYW1w
bGVfZmlsZShzZWxmLCBzYW1wbGVfZmlsZSk6CisgICAgICAgIGZpbGVuYW1lID0gc2VsZi5vdXRw
dXRfZmlsZW5hbWUoc2VsZi5GSUxFTkFNRV9TVUZGSVhfU0FNUExFICsgIi50eHQiKQorICAgICAg
ICBzZWxmLl93cml0ZV90ZXh0X2ZpbGUoZmlsZW5hbWUsIHNlbGYuX2ZpbGVzeXN0ZW0ucmVhZF90
ZXh0X2ZpbGUoc2FtcGxlX2ZpbGUpKQorCiAgICAgZGVmIHdyaXRlX3RleHRfZmlsZXMoc2VsZiwg
YWN0dWFsX3RleHQsIGV4cGVjdGVkX3RleHQpOgogICAgICAgICBzZWxmLndyaXRlX291dHB1dF9m
aWxlcygiLnR4dCIsIGFjdHVhbF90ZXh0LCBleHBlY3RlZF90ZXh0KQogCmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKaW5kZXggNzVhZWY4Yjdh
MzJkNmI0MWFjMWE4NGVkZmEzYjYxN2MxZGM1MWE0Yi4uMDgxMWM5ZmRhOTNhMGZjNTNhNDlkMDRh
YTJkYTlkYzkxYzZjMGNkNyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvYmFzZS5weQpAQCAtMTM0Myw2ICsxMzQzLDkgQEAgY2xhc3MgUG9ydChvYmpl
Y3QpOgogICAgIGRlZiBsb29rX2Zvcl9uZXdfY3Jhc2hfbG9ncyhzZWxmLCBjcmFzaGVkX3Byb2Nl
c3Nlcywgc3RhcnRfdGltZSk6CiAgICAgICAgIHBhc3MKIAorICAgIGRlZiBsb29rX2Zvcl9uZXdf
c2FtcGxlcyhzZWxmLCB1bnJlc3BvbnNpdmVfcHJvY2Vzc2VzLCBzdGFydF90aW1lKToKKyAgICAg
ICAgcGFzcworCiAgICAgZGVmIHNhbXBsZV9wcm9jZXNzKHNlbGYsIG5hbWUsIHBpZCk6CiAgICAg
ICAgIHBhc3MKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9kcml2ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L2RyaXZlci5weQppbmRleCAwOGRlZGIwNDdhNGY3NGZiMTM1N2NhYTU2YzdmYjIzN2M5MDk0
MzEyLi41ODU4ZjU1Mjg5MDQ1NGJjYTUxMzY1Yzc3YmE2YmQ2MTA2OTg1MzQ0IDEwMDY0NAotLS0g
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZlci5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZlci5weQpAQCAt
MzYyLDYgKzM2Miw3IEBAIGNsYXNzIERyaXZlcihvYmplY3QpOgogICAgICAgICAgICAgX2xvZy5k
ZWJ1ZygnJXMgY3Jhc2gsIHBpZCA9ICVzLCBlcnJvcl9saW5lID0gJXMnICUgKHNlbGYuX2NyYXNo
ZWRfcHJvY2Vzc19uYW1lLCBzdHIocGlkKSwgZXJyb3JfbGluZSkpCiAgICAgICAgICAgICBpZiBl
cnJvcl9saW5lLnN0YXJ0c3dpdGgoIiNQUk9DRVNTIFVOUkVTUE9OU0lWRSAtICIpOgogICAgICAg
ICAgICAgICAgIHNlbGYuX3N1YnByb2Nlc3Nfd2FzX3VucmVzcG9uc2l2ZSA9IFRydWUKKyAgICAg
ICAgICAgICAgICBzZWxmLl9wb3J0LnNhbXBsZV9wcm9jZXNzKHNlbGYuX2NyYXNoZWRfcHJvY2Vz
c19uYW1lLCBzZWxmLl9jcmFzaGVkX3BpZCkKICAgICAgICAgICAgICAgICAjIFdlIHdhbnQgdG8g
c2hvdyB0aGlzIHNpbmNlIGl0J3Mgbm90IGEgcmVndWxhciBjcmFzaCBhbmQgcHJvYmFibHkgd2Ug
ZG9uJ3QgaGF2ZSBhIGNyYXNoIGxvZy4KICAgICAgICAgICAgICAgICBzZWxmLmVycm9yX2Zyb21f
dGVzdCArPSBlcnJvcl9saW5lCiAgICAgICAgICAgICByZXR1cm4gVHJ1ZQpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weQppbmRleCAxY2JiODZkMzJm
NjM4YmUzZTk2ZTA3MDlhNDE3Y2ViMzI3ODk3OWE4Li5jZGZmYWU4YzY3MTE0MzU5NTJhMzIxYjcx
ZGQ5YWVjYmFiNmFlN2VmIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L21hYy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L21hYy5weQpAQCAtMTg2LDYgKzE4Niw5IEBAIGNsYXNzIE1hY1BvcnQoQXBwbGVQ
b3J0KToKICAgICBkZWYgcmVsZWFzZV9odHRwX2xvY2soc2VsZik6CiAgICAgICAgIHBhc3MKIAor
ICAgIGRlZiBzYW1wbGVfZmlsZV9wYXRoKHNlbGYsIG5hbWUsIHBpZCk6CisgICAgICAgIHJldHVy
biBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5yZXN1bHRzX2RpcmVjdG9yeSgpLCAiJXMtJXMt
c2FtcGxlLnR4dCIgJSAobmFtZSwgcGlkKSkKKwogICAgIGRlZiBfZ2V0X2NyYXNoX2xvZyhzZWxm
LCBuYW1lLCBwaWQsIHN0ZG91dCwgc3RkZXJyLCBuZXdlcl90aGFuLCB0aW1lX2ZuPU5vbmUsIHNs
ZWVwX2ZuPU5vbmUsIHdhaXRfZm9yX2xvZz1UcnVlKToKICAgICAgICAgIyBOb3RlIHRoYXQgd2Ug
ZG8gc2xvdy1zcGluIGhlcmUgYW5kIHdhaXQsIHNpbmNlIGl0IGFwcGVhcnMgdGhlIHRpbWUKICAg
ICAgICAgIyBSZXBvcnRDcmFzaCB0YWtlcyB0byBhY3R1YWxseSB3cml0ZSBhbmQgZmx1c2ggdGhl
IGZpbGUgdmFyaWVzIHdoZW4gdGhlcmUgYXJlCkBAIC0yMjIsMTYgKzIyNSwyNSBAQCBjbGFzcyBN
YWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgICAgIGNyYXNoX2xvZ3MgPSB7fQogICAgICAgICBmb3Ig
KHRlc3RfbmFtZSwgcHJvY2Vzc19uYW1lLCBwaWQpIGluIGNyYXNoZWRfcHJvY2Vzc2VzOgogICAg
ICAgICAgICAgIyBQYXNzaW5nIE5vbmUgZm9yIG91dHB1dC4gIFRoaXMgaXMgYSBzZWNvbmQgcGFz
cyBhZnRlciB0aGUgdGVzdCBmaW5pc2hlZCBzbwotICAgICAgICAgICAgIyBpZiB0aGUgb3V0cHV0
IGhhZCBhbnkgbG9nZ2luZSB3ZSB3b3VsZCBoYXZlIGFscmVhZHkgY29sbGVjdGVkIGl0LgorICAg
ICAgICAgICAgIyBpZiB0aGUgb3V0cHV0IGhhZCBhbnkgbG9nZ2luZyB3ZSB3b3VsZCBoYXZlIGFs
cmVhZHkgY29sbGVjdGVkIGl0LgogICAgICAgICAgICAgY3Jhc2hfbG9nID0gc2VsZi5fZ2V0X2Ny
YXNoX2xvZyhwcm9jZXNzX25hbWUsIHBpZCwgTm9uZSwgTm9uZSwgc3RhcnRfdGltZSwgd2FpdF9m
b3JfbG9nPUZhbHNlKVsxXQogICAgICAgICAgICAgaWYgbm90IGNyYXNoX2xvZzoKICAgICAgICAg
ICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgY3Jhc2hfbG9nc1t0ZXN0X25hbWVdID0gY3Jh
c2hfbG9nCiAgICAgICAgIHJldHVybiBjcmFzaF9sb2dzCiAKKyAgICBkZWYgbG9va19mb3JfbmV3
X3NhbXBsZXMoc2VsZiwgdW5yZXNwb25zaXZlX3Byb2Nlc3Nlcywgc3RhcnRfdGltZSk6CisgICAg
ICAgIHNhbXBsZV9maWxlcyA9IHt9CisgICAgICAgIGZvciAodGVzdF9uYW1lLCBwcm9jZXNzX25h
bWUsIHBpZCkgaW4gdW5yZXNwb25zaXZlX3Byb2Nlc3NlczoKKyAgICAgICAgICAgIHNhbXBsZV9m
aWxlID0gc2VsZi5zYW1wbGVfZmlsZV9wYXRoKHByb2Nlc3NfbmFtZSwgcGlkKQorICAgICAgICAg
ICAgaWYgbm90IHNlbGYuX2ZpbGVzeXN0ZW0uaXNmaWxlKHNhbXBsZV9maWxlKToKKyAgICAgICAg
ICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgc2FtcGxlX2ZpbGVzW3Rlc3RfbmFtZV0gPSBz
YW1wbGVfZmlsZQorICAgICAgICByZXR1cm4gc2FtcGxlX2ZpbGVzCisKICAgICBkZWYgc2FtcGxl
X3Byb2Nlc3Moc2VsZiwgbmFtZSwgcGlkKToKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgaGFu
Z19yZXBvcnQgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5yZXN1bHRzX2RpcmVjdG9yeSgp
LCAiJXMtJXMuc2FtcGxlLnR4dCIgJSAobmFtZSwgcGlkKSkKKyAgICAgICAgICAgIGhhbmdfcmVw
b3J0ID0gc2VsZi5zYW1wbGVfZmlsZV9wYXRoKG5hbWUsIHBpZCkKICAgICAgICAgICAgIHNlbGYu
X2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChbCiAgICAgICAgICAgICAgICAgIi91c3IvYmluL3NhbXBs
ZSIsCiAgICAgICAgICAgICAgICAgcGlkLApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDAxNmE1ZTNlNjgwYWNlMzQ3MjJmYWVm
MmU3MjBkMGE4MjYzNzgzMWMuLjU4YjdhMDE4N2NhZmFkNjBjMTM5MTQ5Y2RmNDk3MjkwYjIzOWEz
OTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMy0wMy0xNCAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBDb2xsZWN0IHNhbXBsZXMgZm9yIHVucmVz
cG9uc2l2ZSB3ZWIgcHJvY2Vzc2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMTI0MDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGZhc3QvaGFybmVzcy9yZXN1bHRzLmh0bWw6CisKIDIwMTMtMDMtMTMg
IEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBDbGVhbiBv
dXQgc29tZSBzdGFsZSBjaHJvbWl1bSBUZXN0RXhwZWN0YXRpb25zIGVudHJpZXMuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3MvcmVzdWx0cy5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9oYXJuZXNzL3Jlc3VsdHMuaHRtbAppbmRleCBjZDAwMGIwOWIwZDM0YjEzN2VkOTAwMjU2
OTY1ODlkYjBjZTQzZDI3Li4xNjkxZjVmNTAzNmZmOThkOGU3ODQ1NzJlNWU5N2U2MDUxMzY5MzUx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3MvcmVzdWx0cy5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9yZXN1bHRzLmh0bWwKQEAgLTcxMyw5ICs3MTMsMTAg
QEAgZnVuY3Rpb24gdGVzdExpc3QodGVzdHMsIGhlYWRlciwgdGFibGVJZCkKICAgICAgICAgICAg
IGh0bWwgKz0gcmVzdWx0TGluayhzdHJpcEV4dGVuc2lvbih0ZXN0KSwgJy1zdGRlcnIudHh0Jywg
J3N0ZGVycicpOwogICAgICAgICBlbHNlIGlmICh0YWJsZUlkID09ICdwYXNzZXMtdGFibGUnKQog
ICAgICAgICAgICAgaHRtbCArPSB0ZXN0T2JqZWN0LmV4cGVjdGVkOwotICAgICAgICBlbHNlIGlm
ICh0YWJsZUlkID09ICdjcmFzaC10ZXN0cy10YWJsZScpCisgICAgICAgIGVsc2UgaWYgKHRhYmxl
SWQgPT0gJ2NyYXNoLXRlc3RzLXRhYmxlJykgewogICAgICAgICAgICAgaHRtbCArPSByZXN1bHRM
aW5rKHN0cmlwRXh0ZW5zaW9uKHRlc3QpLCAnLWNyYXNoLWxvZy50eHQnLCAnY3Jhc2ggbG9nJyk7
Ci0gICAgICAgIGVsc2UgaWYgKHRhYmxlSWQgPT0gJ3RpbWVvdXQtdGVzdHMtdGFibGUnKSB7Cisg
ICAgICAgICAgICBodG1sICs9IHJlc3VsdExpbmsoc3RyaXBFeHRlbnNpb24odGVzdCksICctc2Ft
cGxlLnR4dCcsICdzYW1wbGUnKTsKKyAgICAgICAgfSBlbHNlIGlmICh0YWJsZUlkID09ICd0aW1l
b3V0LXRlc3RzLXRhYmxlJykgewogICAgICAgICAgICAgLy8gRklYTUU6IG9ubHkgaW5jbHVkZSB0
aW1lb3V0IGFjdHVhbC9kaWZmIHJlc3VsdHMgaGVyZSBpZiB3ZSBhY3R1YWxseSBzcGl0IG91dCBy
ZXN1bHRzIGZvciB0aW1lb3V0IHRlc3RzLgogICAgICAgICAgICAgaHRtbCArPSB0ZXh0UmVzdWx0
TGlua3Moc3RyaXBFeHRlbnNpb24odGVzdCkpOwogICAgICAgICB9Cg==
</data>
<flag name="review"
          id="214708"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>