svn_test_main.c:1073 has a condition of the form: /* just run all tests */ ⋮ if (max_threads == 1 || !parallel) { ⋮ } #if APR_HAS_THREADS else { ⋮ } #endif
max_threads is a value hard-coded in each individual foo-test.c file. «parallel» should always be FALSE in unthreaded builds, but if for some reason it were TRUE, the foo-test executable would silently exit 0 without running any tests, so how about this? — [[[ * subversion/tests/svn_test_main.c (svn_test_main): Add a safety net ensuring APR_HAS_THREADS-less builds would fail, rather than pass silently, if they tried to take the "Run tests concurrently" codepath (which try would be a bug). ]]] [[[ Index: subversion/tests/svn_test_main.c =================================================================== --- subversion/tests/svn_test_main.c (revision 1889073) +++ subversion/tests/svn_test_main.c (working copy) @@ -1089,9 +1089,9 @@ svn_test_main(int argc, const char *argv[], int ma svn_pool_clear(cleanup_pool); } } -#if APR_HAS_THREADS else { +#if APR_HAS_THREADS got_error = do_tests_concurrently(opts.prog_name, test_funcs, array_size, max_threads, &opts, test_pool); @@ -1099,8 +1099,11 @@ svn_test_main(int argc, const char *argv[], int ma /* Execute all cleanups */ svn_pool_clear(test_pool); svn_pool_clear(cleanup_pool); +#else + /* Can't happen */ + SVN_ERR_MALFUNCTION(); +#endif } -#endif } /* Clean up APR */ ]]] Seems safe enough, but I don't have a threadless APR build handy to test this with. Cheers, Daniel