Skip to content

Commit

Permalink
submission: Reorder initialization code
Browse files Browse the repository at this point in the history
login_set socket paths get invalidated when
master_service_init_finish is called, so we need
to run the code that uses them before this.
  • Loading branch information
cmouse authored and villesavolainen committed Sep 25, 2018
1 parent 1e7869f commit 0ec7115
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions src/submission/main.c
Expand Up @@ -341,7 +341,6 @@ int main(int argc, char *argv[])
login_set.callback = login_client_connected;
login_set.failure_callback = login_client_failed;

master_service_init_finish(master_service);
master_service_set_die_callback(master_service, submission_die);

storage_service =
Expand All @@ -363,6 +362,13 @@ int main(int argc, char *argv[])
smtp_client_set.debug = submission_debug;
smtp_client = smtp_client_init(&smtp_client_set);

if (!IS_STANDALONE())
master_login = master_login_init(master_service, &login_set);

master_service_init_finish(master_service);
/* NOTE: login_set.*_socket_path are now invalid due to data stack
having been freed */

/* fake that we're running, so we know if client was destroyed
while handling its initial input */
io_loop_set_running(current_ioloop);
Expand All @@ -372,7 +378,6 @@ int main(int argc, char *argv[])
main_stdio_run(username);
} T_END;
} else {
master_login = master_login_init(master_service, &login_set);
io_loop_set_running(current_ioloop);
}

Expand Down

0 comments on commit 0ec7115

Please sign in to comment.