mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Use run_main_loop_until_done() for process_t tests.
This patch changes the slow process_t tests to use run_main_loop_until_done() instead of do_main_loop() since do_main_loop() initializes a lot of subsystem callbacks that we don't need to run in our tests. See: https://bugs.torproject.org/28179
This commit is contained in:
parent
f983a60a6c
commit
bc6983afed
@ -200,7 +200,6 @@ static int can_complete_circuits = 0;
|
||||
#define LAZY_DESCRIPTOR_RETRY_INTERVAL (60)
|
||||
|
||||
static int conn_close_if_marked(int i);
|
||||
static int run_main_loop_until_done(void);
|
||||
static void connection_start_reading_from_linked_conn(connection_t *conn);
|
||||
static int connection_should_read_from_linked_conn(connection_t *conn);
|
||||
static void conn_read_callback(evutil_socket_t fd, short event, void *_conn);
|
||||
@ -2847,10 +2846,6 @@ do_main_loop(void)
|
||||
}
|
||||
}
|
||||
#endif /* defined(HAVE_SYSTEMD_209) */
|
||||
|
||||
main_loop_should_exit = 0;
|
||||
main_loop_exit_value = 0;
|
||||
|
||||
#ifdef ENABLE_RESTART_DEBUGGING
|
||||
{
|
||||
static int first_time = 1;
|
||||
@ -2976,10 +2971,14 @@ run_main_loop_once(void)
|
||||
*
|
||||
* Shadow won't invoke this function, so don't fill it up with things.
|
||||
*/
|
||||
static int
|
||||
STATIC int
|
||||
run_main_loop_until_done(void)
|
||||
{
|
||||
int loop_result = 1;
|
||||
|
||||
main_loop_should_exit = 0;
|
||||
main_loop_exit_value = 0;
|
||||
|
||||
do {
|
||||
loop_result = run_main_loop_once();
|
||||
} while (loop_result == 1);
|
||||
|
@ -100,6 +100,7 @@ extern struct token_bucket_rw_t global_bucket;
|
||||
extern struct token_bucket_rw_t global_relayed_bucket;
|
||||
|
||||
#ifdef MAINLOOP_PRIVATE
|
||||
STATIC int run_main_loop_until_done(void);
|
||||
STATIC void close_closeable_connections(void);
|
||||
STATIC void initialize_periodic_events(void);
|
||||
STATIC void teardown_periodic_events(void);
|
||||
|
@ -6,6 +6,7 @@
|
||||
* \brief Slow test cases for the Process API.
|
||||
*/
|
||||
|
||||
#define MAINLOOP_PRIVATE
|
||||
#include "orconfig.h"
|
||||
#include "core/or/or.h"
|
||||
#include "core/mainloop/mainloop.h"
|
||||
@ -168,7 +169,7 @@ run_main_loop(void)
|
||||
NULL);
|
||||
|
||||
/* Run our main loop. */
|
||||
ret = do_main_loop();
|
||||
ret = run_main_loop_until_done();
|
||||
|
||||
/* Clean up our main loop timeout timer. */
|
||||
tt_int_op(ret, OP_EQ, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user