diff --git a/src/main.c b/src/main.c index 85fc03d..2f9294e 100644 --- a/src/main.c +++ b/src/main.c @@ -1079,7 +1079,9 @@ int main(int argc, char **argv) uint32_t i=0; void *main_conf_handle=NULL, *rssb_conf_handle=NULL; - memset(&g_frag_run, 0, sizeof(frag_rssb_parameter_t)); + memset(&g_frag_run, 0, sizeof(frag_rssb_parameter_t)); + g_frag_run.recv_msg_fd=-1; + g_frag_run.recv_msg_sd=-1; memset(&g_frag_cfg, 0, sizeof(frag_rssb_configure_t)); memset(&g_frag_stat, 0, sizeof(frag_rssb_status_t)); diff --git a/src/message.c b/src/message.c index f3a1a07..a12759a 100644 --- a/src/message.c +++ b/src/message.c @@ -1081,8 +1081,14 @@ void* recv_response_msg(void *param) { /*recv msg*/ FD_ZERO(&rset); - FD_SET(g_frag_run.recv_msg_fd,&rset); - FD_SET(g_frag_run.recv_msg_sd,&rset); + if(g_frag_run.recv_msg_fd>=0) + { + FD_SET(g_frag_run.recv_msg_fd,&rset); + } + if(g_frag_run.recv_msg_sd>=0) + { + FD_SET(g_frag_run.recv_msg_sd,&rset); + } if(-1==select(maxfdpl,&rset,NULL,NULL,NULL)) { MESA_handle_runtime_log(g_frag_run.logger, RLOG_LV_FATAL, FRAG_REASSEMBLY_MODULE_NAME,