Author: labath Date: Mon Jul 6 10:57:52 2015 New Revision: 241459 URL: http://llvm.org/viewvc/llvm-project?rev=241459&view=rev Log: Fix dosep.py on windows after r240946
Summary: On windows, global python variables are not automatically passed to child processes. This commit makes sure the default timeout value is available to child processes by passing it directly. I pass the whole dotest_opts value to the children, so we can use the other members as well if we need to do it in the future. Reviewers: amccarth Subscribers: lldb-commits-list Differential Revision: http://reviews.llvm.org/D10895 Modified: lldb/trunk/test/dosep.py Modified: lldb/trunk/test/dosep.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/dosep.py?rev=241459&r1=241458&r2=241459&view=diff ============================================================================== --- lldb/trunk/test/dosep.py (original) +++ lldb/trunk/test/dosep.py Mon Jul 6 10:57:52 2015 @@ -67,12 +67,14 @@ eTimedOut, ePassed, eFailed = 124, 0, 1 output_lock = None test_counter = None total_tests = None +dotest_options = None -def setup_lock_and_counter(lock, counter, total): - global output_lock, test_counter, total_tests +def setup_global_variables(lock, counter, total, options): + global output_lock, test_counter, total_tests, dotest_options output_lock = lock test_counter = counter total_tests = total + dotest_options = options def update_status(name = None, command = None, output = None): global output_lock, test_counter, total_tests @@ -152,7 +154,7 @@ def process_dir(root, files, test_root, timeout_name = os.path.basename(os.path.splitext(name)[0]).upper() - timeout = os.getenv("LLDB_%s_TIMEOUT" % timeout_name) or default_timeout + timeout = os.getenv("LLDB_%s_TIMEOUT" % timeout_name) or getDefaultTimeout(dotest_options.lldb_platform_name) exit_status, pass_count, fail_count = call_with_timeout(command, timeout, name) @@ -202,8 +204,8 @@ def walk_and_invoke(test_directory, test # calling each individually. if num_threads > 1: pool = multiprocessing.Pool(num_threads, - initializer = setup_lock_and_counter, - initargs = (output_lock, test_counter, total_tests)) + initializer = setup_global_variables, + initargs = (output_lock, test_counter, total_tests, dotest_options)) test_results = pool.map(process_dir_worker, test_work_items) else: test_results = [] @@ -336,6 +338,7 @@ Run lldb test suite using a separate pro dotest_argv = shlex.split(dotest_option_string, posix=is_posix) if dotest_option_string else [] parser = dotest_args.create_parser() + global dotest_options dotest_options = dotest_args.parse_args(parser, dotest_argv) if not dotest_options.s: @@ -372,9 +375,6 @@ Run lldb test suite using a separate pro if num_threads < 1: num_threads = 1 - global default_timeout - default_timeout = getDefaultTimeout(dotest_options.lldb_platform_name) - system_info = " ".join(platform.uname()) (timed_out, failed, passed, all_fails, all_passes) = walk_and_invoke(test_directory, test_subdir, dotest_argv, num_threads) _______________________________________________ lldb-commits mailing list lldb-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits