<?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>99084</bug_id>
          
          <creation_ts>2012-10-11 10:31:33 -0700</creation_ts>
          <short_desc>[Chromium-Android] Exception when the layout test driver is stopped</short_desc>
          <delta_ts>2012-10-11 15:25:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NRWT</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Xianzhu Wang">wangxianzhu</reporter>
          <assigned_to name="Xianzhu Wang">wangxianzhu</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>ojan</cc>
    
    <cc>peter</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>740116</commentid>
    <comment_count>0</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-10-11 10:31:33 -0700</bug_when>
    <thetext>When the driver is stopped (when it finishes running all tests or some test timeout/crash), following exception raises and layout test script quits:

ValueError raised: I/O operation on closed file
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py&quot;, line 110, in run
      unexpected_result_count = manager.run(args)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py&quot;, line 411, in run
      self._run_tests(self._test_names, result_summary, int(self._options.child_processes))
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py&quot;, line 464, in _run_tests
      return self._runner.run_tests(test_inputs, self._expectations, result_summary, num_workers, needs_http, needs_websockets, self._retrying)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 142, in run_tests
      pool.run((&apos;test_list&apos;, shard.name, shard.test_inputs) for shard in all_shards)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 97, in run
      self.wait()
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 127, in wait
      self._workers[0].run()
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 267, in run
      self._raise(sys.exc_info())
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 255, in run
      worker.handle(message.name, message.src, *message.args)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 304, in handle
      self._run_test(test_input)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 335, in _run_test
      self._clean_up_after_test(test_input, result)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 381, in _clean_up_after_test
      self._kill_driver()
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 367, in _kill_driver
      driver.stop()
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py&quot;, line 645, in stop
      self._read_stdout_process.kill()
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/port/server_process.py&quot;, line 362, in kill
      self.stop(0.0)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/port/server_process.py&quot;, line 352, in stop
      self._wait_for_data_and_update_buffers_using_select(now, stopping=True)
    File &quot;/usr/local/google/home/wangxianzhu/webkit/Tools/Scripts/webkitpy/layout_tests/port/server_process.py&quot;, line 229, in _wait_for_data_and_update_buffers_using_select
      out_fd = self._proc.stdout.fileno()
Exception ValueError: ValueError(&apos;I/O operation on closed file&apos;,) in &lt;bound method ChromiumAndroidDriver.__del__ of &lt;webkitpy.layout_tests.port.chromium_android.ChromiumAndroidDriver object at 0x37e8f10&gt;&gt; ignored</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740130</commentid>
    <comment_count>1</comment_count>
      <attachid>168254</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-10-11 10:47:10 -0700</bug_when>
    <thetext>Created attachment 168254
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740180</commentid>
    <comment_count>2</comment_count>
      <attachid>168254</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-10-11 12:48:56 -0700</bug_when>
    <thetext>Comment on attachment 168254
Patch

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

This seems reasonable. One

&gt; Tools/Scripts/webkitpy/layout_tests/port/server_process.py:334
&gt;          self._proc.stdin.close()

Can you add a &quot;self._proc.stdin = None&quot; here as well? I think w/o this we can end up trying to close the handle twice in self._reset() on line 357 (this isn&apos;t your fault, but I noticed this while reviewing the patch).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740201</commentid>
    <comment_count>3</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-10-11 13:18:36 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 168254 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168254&amp;action=review
&gt; 
&gt; This seems reasonable. One
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/server_process.py:334
&gt; &gt;          self._proc.stdin.close()
&gt; 
&gt; Can you add a &quot;self._proc.stdin = None&quot; here as well? I think w/o this we can end up trying to close the handle twice in self._reset() on line 357 (this isn&apos;t your fault, but I noticed this while reviewing the patch).

The problem seems more complex than I thought after I noticed this line. For all ports in the later _wait_for_data_and_update_buffers_using_select() stdin.fileno() will be called while stdin has been closed. On chromium-android, this causes the exception (though the situation is a bit different).

I wonder what the intent of the line is. Can we just remove it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740213</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-10-11 13:28:59 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 168254 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168254&amp;action=review
&gt; &gt; 
&gt; &gt; This seems reasonable. One
&gt; &gt; 
&gt; &gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/server_process.py:334
&gt; &gt; &gt;          self._proc.stdin.close()
&gt; &gt; 
&gt; &gt; Can you add a &quot;self._proc.stdin = None&quot; here as well? I think w/o this we can end up trying to close the handle twice in self._reset() on line 357 (this isn&apos;t your fault, but I noticed this while reviewing the patch).
&gt; 
&gt; The problem seems more complex than I thought after I noticed this line. For all ports in the later _wait_for_data_and_update_buffers_using_select() stdin.fileno() will be called while stdin has been closed. On chromium-android, this causes the exception (though the situation is a bit different).
&gt; 
&gt; I wonder what the intent of the line is. Can we just remove it?

closing stdin is the way DRT is supposed to be notified to shut down cleanly, so, no.

But, _wait_for_data doesn&apos;t access stdin? Did you misread something?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740226</commentid>
    <comment_count>5</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-10-11 13:39:17 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; (From update of attachment 168254 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168254&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; This seems reasonable. One
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/server_process.py:334
&gt; &gt; &gt; &gt;          self._proc.stdin.close()
&gt; &gt; &gt; 
&gt; &gt; &gt; Can you add a &quot;self._proc.stdin = None&quot; here as well? I think w/o this we can end up trying to close the handle twice in self._reset() on line 357 (this isn&apos;t your fault, but I noticed this while reviewing the patch).
&gt; &gt; 
&gt; &gt; The problem seems more complex than I thought after I noticed this line. For all ports in the later _wait_for_data_and_update_buffers_using_select() stdin.fileno() will be called while stdin has been closed. On chromium-android, this causes the exception (though the situation is a bit different).
&gt; &gt; 
&gt; &gt; I wonder what the intent of the line is. Can we just remove it?
&gt; 
&gt; closing stdin is the way DRT is supposed to be notified to shut down cleanly, so, no.
&gt; 
&gt; But, _wait_for_data doesn&apos;t access stdin? Did you misread something?

Yes, I mixed up stdin and stdout :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740231</commentid>
    <comment_count>6</comment_count>
      <attachid>168270</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-10-11 13:41:40 -0700</bug_when>
    <thetext>Created attachment 168270
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740303</commentid>
    <comment_count>7</comment_count>
      <attachid>168270</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 15:25:51 -0700</bug_when>
    <thetext>Comment on attachment 168270
Patch

Clearing flags on attachment: 168270

Committed r131099: &lt;http://trac.webkit.org/changeset/131099&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740304</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 15:25:54 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168254</attachid>
            <date>2012-10-11 10:47:10 -0700</date>
            <delta_ts>2012-10-11 13:41:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99084-20121011104607.patch</filename>
            <type>text/plain</type>
            <size>2551</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMDc5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDg4OTljZDZmMjkzOWY4MjIzYzIwMTkwZWJkZGMwNGE4
NTNjOWIxYS4uNjI5NWVlYmMxNjliYmEzNmUzY2I1MDEwODUzYzlkMzE5Y2EzOTJlMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEyLTEwLTExICBYaWFuemh1IFdhbmcgIDx3YW5neGlhbnpodUBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgW0Nocm9taXVtLUFuZHJvaWRdIEV4Y2VwdGlvbiB3aGVuIHRoZSBsYXlvdXQg
dGVzdCBkcml2ZXIgaXMgc3RvcHBlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9OTkwODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBPbiBjaHJvbWl1bS1hbmRyb2lkLCB0aGUgcHJvY2VzcyBpcyBraWxsZWQg
ZGlyZWN0bHkgaW4gU2VydmVyUHJvY2Vzcy5zdG9wKCkgYXMgdGhlIHBpcGVzIGFyZSBjbG9zZWQg
Zmlyc3QuCisgICAgICAgIFNob3VsZCBub3QgdHJ5IHRvIHJlYWQgZGF0YSBmcm9tIHRoZSBwaXBl
cyBhZnRlciB0aGUgcHJvY2VzcyBpcyBraWxsZWQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5OgorICAgICAgICAoU2VydmVy
UHJvY2Vzcy5zdG9wKTogRG9uJ3QgcmVhZCBkYXRhIGFmdGVyIHRoZSBwcm9jZXNzIGlzIGtpbGxl
ZC4KKwogMjAxMi0xMC0xMSAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1zYW5jaGV6QGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0dUS10gUkVHUkVTU0lPTihyMTMxMDMzKTogRmF2aWNvbnMgZG9uJ3Qg
d29yayBpbiBNaW5pQnJvd3NlcgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKaW5kZXggNDhmZWRhOTY4NmE4
YWE0NjUxYzE5NWFkMGRlZDFlNzRlZjdhN2ZkMi4uYjI1ZjljOTZlZDEwODcxMzU1NTExYzc0NTQw
MjlmZDE0MWZhNzA3OSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5CkBAIC0zMzIsOCArMzMyLDEwIEBA
IGNsYXNzIFNlcnZlclByb2Nlc3Mob2JqZWN0KToKIAogICAgICAgICBub3cgPSB0aW1lLnRpbWUo
KQogICAgICAgICBzZWxmLl9wcm9jLnN0ZGluLmNsb3NlKCkKKyAgICAgICAga2lsbGVkID0gRmFs
c2UKICAgICAgICAgaWYgbm90IHRpbWVvdXRfc2VjczoKICAgICAgICAgICAgIHNlbGYuX2tpbGwo
KQorICAgICAgICAgICAga2lsbGVkID0gVHJ1ZQogICAgICAgICBlbGlmIG5vdCBzZWxmLl9ob3N0
LnBsYXRmb3JtLmlzX3dpbigpOgogICAgICAgICAgICAgIyBGSVhNRTogV2h5IGFyZW4ndCB3ZSBj
YWxsaW5nIHRoaXMgb24gd2luPwogICAgICAgICAgICAgZGVhZGxpbmUgPSBub3cgKyB0aW1lb3V0
X3NlY3MKQEAgLTM0MiwxMyArMzQ0LDE1IEBAIGNsYXNzIFNlcnZlclByb2Nlc3Mob2JqZWN0KToK
ICAgICAgICAgICAgIGlmIHNlbGYuX3Byb2MucG9sbCgpIGlzIE5vbmU6CiAgICAgICAgICAgICAg
ICAgX2xvZy53YXJuaW5nKCdzdG9wcGluZyAlcyB0aW1lZCBvdXQsIGtpbGxpbmcgaXQnICUgc2Vs
Zi5fbmFtZSkKICAgICAgICAgICAgICAgICBzZWxmLl9raWxsKCkKKyAgICAgICAgICAgICAgICBr
aWxsZWQgPSBUcnVlCiAgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCdraWxsZWQnKQogCiAg
ICAgICAgICMgcmVhZCBhbnkgcmVtYWluaW5nIGRhdGEgb24gdGhlIHBpcGVzIGFuZCByZXR1cm4g
aXQuCi0gICAgICAgIGlmIHNlbGYuX3VzZV93aW4zMl9hcGlzOgotICAgICAgICAgICAgc2VsZi5f
d2FpdF9mb3JfZGF0YV9hbmRfdXBkYXRlX2J1ZmZlcnNfdXNpbmdfd2luMzJfYXBpcyhub3cpCi0g
ICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLl93YWl0X2Zvcl9kYXRhX2FuZF91cGRhdGVf
YnVmZmVyc191c2luZ19zZWxlY3Qobm93LCBzdG9wcGluZz1UcnVlKQorICAgICAgICBpZiBub3Qg
a2lsbGVkOgorICAgICAgICAgICAgaWYgc2VsZi5fdXNlX3dpbjMyX2FwaXM6CisgICAgICAgICAg
ICAgICAgc2VsZi5fd2FpdF9mb3JfZGF0YV9hbmRfdXBkYXRlX2J1ZmZlcnNfdXNpbmdfd2luMzJf
YXBpcyhub3cpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuX3dhaXRf
Zm9yX2RhdGFfYW5kX3VwZGF0ZV9idWZmZXJzX3VzaW5nX3NlbGVjdChub3csIHN0b3BwaW5nPVRy
dWUpCiAgICAgICAgIG91dCwgZXJyID0gc2VsZi5fb3V0cHV0LCBzZWxmLl9lcnJvcgogICAgICAg
ICBzZWxmLl9yZXNldCgpCiAgICAgICAgIHJldHVybiAob3V0LCBlcnIpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168270</attachid>
            <date>2012-10-11 13:41:40 -0700</date>
            <delta_ts>2012-10-11 15:25:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99084-20121011134037.patch</filename>
            <type>text/plain</type>
            <size>2581</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMDc5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDg4OTljZDZmMjkzOWY4MjIzYzIwMTkwZWJkZGMwNGE4
NTNjOWIxYS4uNjQyZWFhZmM5OTM3MzNlMzgzMmVkZDQ0NDk0Nzc3ZjRiZDdjZDcyYSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEyLTEwLTExICBYaWFuemh1IFdhbmcgIDx3YW5neGlhbnpodUBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgW0Nocm9taXVtLUFuZHJvaWRdIEV4Y2VwdGlvbiB3aGVuIHRoZSBsYXlvdXQg
dGVzdCBkcml2ZXIgaXMgc3RvcHBlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9OTkwODQKKworICAgICAgICBSZXZpZXdlZCBieSBEaXJrIFByYW5rZS4K
KworICAgICAgICBPbiBjaHJvbWl1bS1hbmRyb2lkLCB0aGUgcHJvY2VzcyBpcyBraWxsZWQgZGly
ZWN0bHkgaW4gU2VydmVyUHJvY2Vzcy5zdG9wKCkgYXMgdGhlIHBpcGVzIGFyZSBjbG9zZWQgZmly
c3QuCisgICAgICAgIFNob3VsZCBub3QgdHJ5IHRvIHJlYWQgZGF0YSBmcm9tIHRoZSBwaXBlcyBh
ZnRlciB0aGUgcHJvY2VzcyBpcyBraWxsZWQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5OgorICAgICAgICAoU2VydmVyUHJv
Y2Vzcy5zdG9wKTogRG9uJ3QgcmVhZCBkYXRhIGFmdGVyIHRoZSBwcm9jZXNzIGlzIGtpbGxlZC4K
KwogMjAxMi0xMC0xMSAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1zYW5jaGV6QGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0dUS10gUkVHUkVTU0lPTihyMTMxMDMzKTogRmF2aWNvbnMgZG9uJ3Qgd29y
ayBpbiBNaW5pQnJvd3NlcgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvc2VydmVyX3Byb2Nlc3MucHkKaW5kZXggNDhmZWRhOTY4NmE4YWE0
NjUxYzE5NWFkMGRlZDFlNzRlZjdhN2ZkMi4uYmZkZjgzMDFiYTAwZjkzYjVmYjUyN2MwNDIyNTk4
NjVmOGE3NGUwNSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9zZXJ2ZXJfcHJvY2Vzcy5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L3NlcnZlcl9wcm9jZXNzLnB5CkBAIC0zMzIsOCArMzMyLDExIEBAIGNs
YXNzIFNlcnZlclByb2Nlc3Mob2JqZWN0KToKIAogICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQog
ICAgICAgICBzZWxmLl9wcm9jLnN0ZGluLmNsb3NlKCkKKyAgICAgICAgc2VsZi5fcHJvYy5zdGRp
biA9IE5vbmUKKyAgICAgICAga2lsbGVkID0gRmFsc2UKICAgICAgICAgaWYgbm90IHRpbWVvdXRf
c2VjczoKICAgICAgICAgICAgIHNlbGYuX2tpbGwoKQorICAgICAgICAgICAga2lsbGVkID0gVHJ1
ZQogICAgICAgICBlbGlmIG5vdCBzZWxmLl9ob3N0LnBsYXRmb3JtLmlzX3dpbigpOgogICAgICAg
ICAgICAgIyBGSVhNRTogV2h5IGFyZW4ndCB3ZSBjYWxsaW5nIHRoaXMgb24gd2luPwogICAgICAg
ICAgICAgZGVhZGxpbmUgPSBub3cgKyB0aW1lb3V0X3NlY3MKQEAgLTM0MiwxMyArMzQ1LDE1IEBA
IGNsYXNzIFNlcnZlclByb2Nlc3Mob2JqZWN0KToKICAgICAgICAgICAgIGlmIHNlbGYuX3Byb2Mu
cG9sbCgpIGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCdzdG9wcGluZyAl
cyB0aW1lZCBvdXQsIGtpbGxpbmcgaXQnICUgc2VsZi5fbmFtZSkKICAgICAgICAgICAgICAgICBz
ZWxmLl9raWxsKCkKKyAgICAgICAgICAgICAgICBraWxsZWQgPSBUcnVlCiAgICAgICAgICAgICAg
ICAgX2xvZy53YXJuaW5nKCdraWxsZWQnKQogCiAgICAgICAgICMgcmVhZCBhbnkgcmVtYWluaW5n
IGRhdGEgb24gdGhlIHBpcGVzIGFuZCByZXR1cm4gaXQuCi0gICAgICAgIGlmIHNlbGYuX3VzZV93
aW4zMl9hcGlzOgotICAgICAgICAgICAgc2VsZi5fd2FpdF9mb3JfZGF0YV9hbmRfdXBkYXRlX2J1
ZmZlcnNfdXNpbmdfd2luMzJfYXBpcyhub3cpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBz
ZWxmLl93YWl0X2Zvcl9kYXRhX2FuZF91cGRhdGVfYnVmZmVyc191c2luZ19zZWxlY3Qobm93LCBz
dG9wcGluZz1UcnVlKQorICAgICAgICBpZiBub3Qga2lsbGVkOgorICAgICAgICAgICAgaWYgc2Vs
Zi5fdXNlX3dpbjMyX2FwaXM6CisgICAgICAgICAgICAgICAgc2VsZi5fd2FpdF9mb3JfZGF0YV9h
bmRfdXBkYXRlX2J1ZmZlcnNfdXNpbmdfd2luMzJfYXBpcyhub3cpCisgICAgICAgICAgICBlbHNl
OgorICAgICAgICAgICAgICAgIHNlbGYuX3dhaXRfZm9yX2RhdGFfYW5kX3VwZGF0ZV9idWZmZXJz
X3VzaW5nX3NlbGVjdChub3csIHN0b3BwaW5nPVRydWUpCiAgICAgICAgIG91dCwgZXJyID0gc2Vs
Zi5fb3V0cHV0LCBzZWxmLl9lcnJvcgogICAgICAgICBzZWxmLl9yZXNldCgpCiAgICAgICAgIHJl
dHVybiAob3V0LCBlcnIpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>