Skip to content
Snippets Groups Projects

Don't exit main thread when server=false

Merged Sergei Rashitov requested to merge bugs-3903 into master
2 files
+ 16
12
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 15
11
@@ -142,7 +142,7 @@ int main( int argc, const char **argv )
{
dap_server_t *l_server = NULL; // DAP Server instance
bool l_debug_mode = true;
bool bServerEnabled = true;
bool bServerEnabled = false;
int rc = 0;
dap_set_appname("cellframe-node");
@@ -218,7 +218,11 @@ int main( int argc, const char **argv )
#endif
}
if ( dap_server_init(l_thread_cnt) != 0 ) {
bServerEnabled = dap_config_get_item_bool_default( g_config, "server", "enabled", false );
log_it ( L_DEBUG,"config server->enabled = \"%u\" ", bServerEnabled );
if ( bServerEnabled && dap_server_init(l_thread_cnt) != 0 ) {
log_it( L_CRITICAL, "Can't init socket server module" );
return -4;
}
@@ -372,10 +376,6 @@ int main( int argc, const char **argv )
save_process_pid_in_file(s_pid_file_path);
bServerEnabled = dap_config_get_item_bool_default( g_config, "server", "enabled", false );
log_it ( L_DEBUG,"config server->enabled = \"%u\" ", bServerEnabled );
if ( bServerEnabled ) {
int32_t l_port = dap_config_get_item_int32(g_config, "server", "listen_port_tcp");
@@ -473,10 +473,14 @@ int main( int argc, const char **argv )
dap_chain_plugins_init(g_config);
#endif
// Endless loop for server's requests processing
rc = dap_server_loop(l_server);
// After loop exit actions
log_it( rc ? L_CRITICAL : L_NOTICE, "Server loop stopped with return code %d", rc );
if (bServerEnabled) {
// Endless loop for server's requests processing
rc = dap_server_loop(l_server);
// After loop exit actions
log_it( rc ? L_CRITICAL : L_NOTICE, "Server loop stopped with return code %d", rc );
} else {
dap_events_wait(l_events);
}
// Deinit modules
@@ -490,7 +494,7 @@ int main( int argc, const char **argv )
dap_stream_ctl_deinit();
dap_http_folder_deinit();
dap_http_deinit();
dap_server_deinit();
if (bServerEnabled) dap_server_deinit();
dap_enc_ks_deinit();
dap_chain_node_mempool_deinit();
Loading