<?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>141884</bug_id>
          
          <creation_ts>2015-02-22 18:06:12 -0800</creation_ts>
          <short_desc>[iOS] run-webkit-tests --leaks is broken because IOSSimulatorPort has no is_snowleopard attribute</short_desc>
          <delta_ts>2015-02-23 10:53:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>glenn</cc>
    
    <cc>jake.nielsen.webkit</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1071104</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-22 18:06:12 -0800</bug_when>
    <thetext>run-webkit-tests --leaks is broken because IOSSimulatorPort does not define an is_snowleopard attribute:

$ ./Tools/Scripts/run-webkit-tests --release --ios-simulator --results-directory /tmp/layout-test-results-adhoc-test --leaks 
[...]
Process worker/22:       
Traceback (most recent call last):
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/process.py&quot;, line 258, in _bootstrap
worker/22: AttributeError(&apos;&apos;IOSSimulatorPort&apos; object has no attribute &apos;is_snowleopard&apos;&apos;) raised:
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 255, in run
      worker.handle(message.name, message.src, *message.args)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 256, in handle
      self._run_test(test_input, test_list_name)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 280, in _run_test
      result = self._run_test_with_or_without_timeout(test_input, test_timeout_sec, stop_when_done)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 323, in _run_test_with_or_without_timeout
      return self._run_test_in_this_thread(test_input, stop_when_done)
    self.run()
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 404, in _run_test_in_this_thread
      return self._run_single_test(self._driver, test_input, stop_when_done)
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/common/message_pool.py&quot;, line 271, in run
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 408, in _run_single_test
      self._name, driver, test_input, stop_when_done)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py&quot;, line 46, in run_single_test
      return runner.run()
    worker.stop()
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py&quot;, line 102, in run
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 293, in stop
    self._kill_driver()
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py&quot;, line 318, in _kill_driver
      return self._run_reftest()
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/layout_tests/controllers/single_test_runner.py&quot;, line 291, in _run_reftest
    driver.stop()
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/driver.py&quot;, line 635, in stop
      test_output = self._driver.run_test(self._driver_input(), self._stop_when_done)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/driver.py&quot;, line 629, in run_test
    self._driver.stop()
      return self._driver.run_test(driver_input, stop_when_done)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/driver.py&quot;, line 203, in run_test
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/driver.py&quot;, line 347, in stop
      out, err = self._server_process.stop(self._port.driver_stop_timeout() if stop_when_done else 0.0)
    self._server_process.stop(self._port.driver_stop_timeout())
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/server_process.py&quot;, line 337, in stop
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/server_process.py&quot;, line 337, in stop
      self._port.check_for_leaks(self.name(), self.pid())
    self._port.check_for_leaks(self.name(), self.pid())
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/ios.py&quot;, line 257, in check_for_leaks
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/ios.py&quot;, line 257, in check_for_leaks
    self._leak_detector.check_for_leaks(process_name, process_pid)
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 133, in check_for_leaks
    leaks_output = self._port._run_script(&quot;run-leaks&quot;, self._leaks_args(process_pid), include_configuration_arguments=False, decode_output=False)
      self._leak_detector.check_for_leaks(process_name, process_pid)
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 80, in _leaks_args
    for callstack in self._callstacks_to_exclude_from_leaks():
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 133, in check_for_leaks
  File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 60, in _callstacks_to_exclude_from_leaks
    if self._port.is_snowleopard():
      leaks_output = self._port._run_script(&quot;run-leaks&quot;, self._leaks_args(process_pid)AttributeError: &apos;IOSSimulatorPort&apos; object has no attribute &apos;is_snowleopard&apos;
, include_configuration_arguments=False, decode_output=False)
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 80, in _leaks_args
      for callstack in self._callstacks_to_exclude_from_leaks():
    File &quot;/Volumes/Data/WebKit.git/Tools/Scripts/webkitpy/port/leakdetector.py&quot;, line 60, in _callstacks_to_exclude_from_leaks
      if self._port.is_snowleopard():
Exception AttributeError: AttributeError(&quot;&apos;IOSSimulatorPort&apos; object has no attribute &apos;is_snowleopard&apos;&quot;,) in &lt;bound method IOSSimulatorDriver.__del__ of &lt;webkitpy.port.driver.IOSSimulatorDriver object at 0x10a5ddd10&gt;&gt; ignored</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071105</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-22 18:06:34 -0800</bug_when>
    <thetext>&lt;rdar://problem/19917423&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071107</commentid>
    <comment_count>2</comment_count>
      <attachid>247089</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-22 18:15:44 -0800</bug_when>
    <thetext>Created attachment 247089
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071124</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-22 20:53:25 -0800</bug_when>
    <thetext>Interestingly, even after this fix, run-webkit-tests --ios-simulator is checking leaks on the LayouTestRelay process, not the DumpRenderTree.app process, and MallocStackLogging=1 is not being set when launching DumpRenderTree.app.

So there is more work to do here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071229</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-23 10:07:49 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Interestingly, even after this fix, run-webkit-tests --ios-simulator is
&gt; checking leaks on the LayouTestRelay process, not the DumpRenderTree.app
&gt; process, and MallocStackLogging=1 is not being set when launching
&gt; DumpRenderTree.app.
&gt; 
&gt; So there is more work to do here.

Will do the follow-up work in another bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071250</commentid>
    <comment_count>5</comment_count>
      <attachid>247089</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-23 10:53:23 -0800</bug_when>
    <thetext>Comment on attachment 247089
Patch v1

Clearing flags on attachment: 247089

Committed r180509: &lt;http://trac.webkit.org/changeset/180509&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071251</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-23 10:53:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247089</attachid>
            <date>2015-02-22 18:15:44 -0800</date>
            <delta_ts>2015-02-23 10:53:23 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-141884-20150222181534.patch</filename>
            <type>text/plain</type>
            <size>3871</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNDg5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggM2Q4M2E5OTk2Y2M0MDA4ZDcyODM5YzBlOGQ4YzUzZjA1
YzE3ODY4My4uMTU0NTlkMzA5YTg3MjVjZjQ1YzUxN2FkMjc1MTQ0NDQ5MmUzYjY4YyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIw
IEBACisyMDE1LTAyLTIyICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAg
ICAgICAgW2lPU10gcnVuLXdlYmtpdC10ZXN0cyAtLWxlYWtzIGlzIGJyb2tlbiBiZWNhdXNlIElP
U1NpbXVsYXRvclBvcnQgaGFzIG5vIGlzX3Nub3dsZW9wYXJkIGF0dHJpYnV0ZQorICAgICAgICA8
aHR0cDovL3dlYmtpdC5vcmcvYi8xNDE4ODQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvbGVha2RldGVjdG9y
LnB5OgorICAgICAgICAoTGVha0RldGVjdG9yLl9jYWxsc3RhY2tzX3RvX2V4Y2x1ZGVfZnJvbV9s
ZWFrcyk6IFJlbW92ZQorICAgICAgICBzbm93bGVvcGFyZCwgbGlvbiBhbmQgb2xkZXIgbGVha3Mu
ICBBZGQga25vd24gbGVhayBmb3IKKyAgICAgICAgbWF2ZXJpY2tzLCBidXQgY2hlY2sgUG9ydC5v
cGVyYXRpbmdfc3lzdGVtIGJlZm9yZSBjYWxsaW5nCisgICAgICAgIFBvcnQuaXNfbWF2ZXJpY2tz
LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcG9ydC9tYWMucHk6CisgICAgICAgIChNYWNQ
b3J0LmlzX3Nub3dsZW9wYXJkKTogRGVsZXRlLgorICAgICAgICAoTWFjUG9ydC5pc19saW9uKTog
RGVsZXRlLgorICAgICAgICAoTWFjUG9ydC5pc19tYXZlcmlja3MpOiBBZGQuCisKIDIwMTUtMDIt
MjEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KIAogICAgICAg
ICBUZXN0cyBkb24ndCB3b3JrIG9uIHNvbWUgYm90czogRmFpbGVkIHRvIHN0b3Agd3B0d2sKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9sZWFrZGV0ZWN0b3IucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbGVha2RldGVjdG9yLnB5CmluZGV4IGY0NmNkMzRl
NTU3Mjg0YjA5ODYyMmIzNTMxZGZiYzc3Yzk0YTAzY2MuLmY1ZWRlY2ZhNWE0OGE4NjgwZDRlOWVl
NWE2NjBiMjhjZjRkM2Q5NTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9y
dC9sZWFrZGV0ZWN0b3IucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2xlYWtk
ZXRlY3Rvci5weQpAQCAtNTMsMjUgKzUzLDEwIEBAIGNsYXNzIExlYWtEZXRlY3RvcihvYmplY3Qp
OgogICAgICAgICByZXR1cm4gW10KIAogICAgIGRlZiBfY2FsbHN0YWNrc190b19leGNsdWRlX2Zy
b21fbGVha3Moc2VsZik6Ci0gICAgICAgIGNhbGxzdGFja3MgPSBbCi0gICAgICAgICAgICAiRmxh
c2hfRW5mb3JjZUxvY2FsU2VjdXJpdHkiLCAgIyBsZWFrcyBpbiBGbGFzaCBwbHVnLWluIGNvZGUs
IHJkYXI6Ly9wcm9ibGVtLzQ0NDk3NDcKLSAgICAgICAgICAgICJTY2FuRnJvbVN0cmluZyIsICMg
PGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmdsZXByb2plY3QvaXNzdWVzL2RldGFpbD9pZD0y
NDk+IGxlYWsgaW4gQU5HTEUKLSAgICAgICAgXQotICAgICAgICBpZiBzZWxmLl9wb3J0LmlzX3Nu
b3dsZW9wYXJkKCk6CisgICAgICAgIGNhbGxzdGFja3MgPSBbXQorICAgICAgICBpZiBzZWxmLl9w
b3J0Lm9wZXJhdGluZ19zeXN0ZW0gPT0gJ21hYycgYW5kIHNlbGYuX3BvcnQuaXNfbWF2ZXJpY2tz
KCk6CiAgICAgICAgICAgICBjYWxsc3RhY2tzICs9IFsKLSAgICAgICAgICAgICAgICAicmVhZE1h
a2VyTm90ZVByb3BzIiwgICMgPHJkYXI6Ly9wcm9ibGVtLzcxNTY0MzI+IGxlYWsgaW4gSW1hZ2VJ
TwotICAgICAgICAgICAgICAgICJRVEtpdE1vdmllQ29udHJvbGxlclZpZXcgY29tcGxldGVVSVNl
dHVwIiwgICMgPHJkYXI6Ly9wcm9ibGVtLzcxNTUxNTY+IGxlYWsgaW4gUVRLaXQKLSAgICAgICAg
ICAgICAgICAiZ2V0Vk1Jbml0QXJncyIsICAjIDxyZGFyOi8vcHJvYmxlbS83NzE0NDQ0PiBsZWFr
IGluIEphdmEKLSAgICAgICAgICAgICAgICAiSmF2YV9qYXZhX2xhbmdfU3lzdGVtX2luaXRQcm9w
ZXJ0aWVzIiwgICMgPHJkYXI6Ly9wcm9ibGVtLzc3MTQ0NjU+IGxlYWsgaW4gSmF2YQotICAgICAg
ICAgICAgICAgICJnbHJDb21wRXhlY3V0ZUtlcm5lbCIsICAjIDxyZGFyOi8vcHJvYmxlbS83ODE1
MzkxPiBsZWFrIGluIGdyYXBoaWNzIGRyaXZlciB3aGlsZSB1c2luZyBPcGVuR0wKLSAgICAgICAg
ICAgICAgICAiTlNOdW1iZXJGb3JtYXR0ZXIgZ2V0T2JqZWN0VmFsdWU6Zm9yU3RyaW5nOmVycm9y
RGVzY3JpcHRpb246IiwgICMgPHJkYXI6Ly9wcm9ibGVtLzcxNDkzNTA+IExlYWsgaW4gTlNOdW1i
ZXJGb3JtYXR0ZXIKLSAgICAgICAgICAgIF0KLSAgICAgICAgZWxpZiBzZWxmLl9wb3J0LmlzX2xp
b24oKToKLSAgICAgICAgICAgIGNhbGxzdGFja3MgKz0gWwotICAgICAgICAgICAgICAgICJGaWdC
eXRlRmx1bWVDdXN0b21VUkxDcmVhdGVXaXRoVVJMIiwgIyA8cmRhcjovL3Byb2JsZW0vMTA0NjE5
MjY+IGxlYWsgaW4gQ29yZU1lZGlhCi0gICAgICAgICAgICAgICAgIlBERlBhZ2VcKFBERlBhZ2VJ
bnRlcm5hbFwpIHBhZ2VMYXlvdXRJZkF2YWlsIiwgIyA8cmRhcjovL3Byb2JsZW0vMTA0NjIwNTU+
IGxlYWsgaW4gUERGS2l0Ci0gICAgICAgICAgICAgICAgIlNlY1RyYW5zZm9ybUV4ZWN1dGUiLCAj
IDxyZGFyOi8vcHJvYmxlbS8xMDQ3MDY2Nz4gbGVhayBpbiBTZWN1cml0eS5mcmFtZXdvcmsKLSAg
ICAgICAgICAgICAgICAiX05TQ29weVN0eWxlUmVmRm9yRm9jdXNSaW5nU3R5bGVDbGlwIiwgIyA8
cmRhcjovL3Byb2JsZW0vMTA0NjIwMzE+IGxlYWsgaW4gQXBwS2l0CisgICAgICAgICAgICAgICAg
J0FWQXNzZXRSZXNvdXJjZUxvYWRlciBfcG9zZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlV2l0aEtl
eTpkYXRhOnJlcXVlc3REaWN0aW9uYXJ5OmZhbGxiYWNrSGFuZGxlcjonLCAgIyA8cmRhcjovL3By
b2JsZW0vMTk2OTk4ODc+IGxlYWsgaW4gQVZGb3VuZGF0aW9uCiAgICAgICAgICAgICBdCiAgICAg
ICAgIHJldHVybiBjYWxsc3RhY2tzCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvcG9ydC9tYWMucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvbWFjLnB5CmluZGV4
IDNiMThkYmRlNmRkYjg1MDc1YzgxZjIwNDQ2YjdmZjgxZGI5NjgzZWYuLjE4ZDA2YzYwNTllNTRi
ZDg5ZjgyNmY1ODBkZjU2MGI2Njc5MTg2YTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvcG9ydC9tYWMucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L21hYy5w
eQpAQCAtMTExLDEyICsxMTEsOCBAQCBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgICAg
IHJldHVybiAnbWFjJwogCiAgICAgIyBCZWxvbmdzIG9uIGEgUGxhdGZvcm0gb2JqZWN0LgotICAg
IGRlZiBpc19zbm93bGVvcGFyZChzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX3ZlcnNpb24g
PT0gInNub3dsZW9wYXJkIgotCi0gICAgIyBCZWxvbmdzIG9uIGEgUGxhdGZvcm0gb2JqZWN0Lgot
ICAgIGRlZiBpc19saW9uKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fdmVyc2lvbiA9PSAi
bGlvbiIKKyAgICBkZWYgaXNfbWF2ZXJpY2tzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5f
dmVyc2lvbiA9PSAnbWF2ZXJpY2tzJwogCiAgICAgZGVmIGRlZmF1bHRfY2hpbGRfcHJvY2Vzc2Vz
KHNlbGYpOgogICAgICAgICBpZiBzZWxmLl92ZXJzaW9uID09ICJzbm93bGVvcGFyZCI6Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>