Log stack-trace for run-webkit-tests when interrupted
[WebKit-https.git] / Tools / Scripts / webkitpy / layout_tests / run_webkit_tests.py
index 3d05a85..0804745 100755 (executable)
@@ -1,6 +1,6 @@
 # Copyright (C) 2010 Google Inc. All rights reserved.
 # Copyright (C) 2010 Gabor Rapcsanyi (rgabor@inf.u-szeged.hu), University of Szeged
-# Copyright (C) 2011, 2016 Apple Inc. All rights reserved.
+# Copyright (C) 2011, 2016, 2019 Apple Inc. All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions are
@@ -36,6 +36,7 @@ import sys
 import traceback
 
 from webkitpy.common.host import Host
+from webkitpy.common.interrupt_debugging import log_stack_trace_on_ctrl_c, log_stack_trace_on_term
 from webkitpy.layout_tests.controllers.manager import Manager
 from webkitpy.layout_tests.models.test_run_results import INTERRUPTED_EXIT_STATUS
 from webkitpy.port import configuration_options, platform_options
@@ -75,6 +76,10 @@ def main(argv, stdout, stderr):
         print(str(e), file=stderr)
         return EXCEPTIONAL_EXIT_STATUS
 
+    stack_trace_path = host.filesystem.join(port.results_directory(), 'python_stack_trace.txt')
+    log_stack_trace_on_ctrl_c(output_file=stack_trace_path)
+    log_stack_trace_on_term(output_file=stack_trace_path)
+
     if options.print_expectations:
         return _print_expectations(port, options, args, stderr)