diff options
| author | zhengchao <[email protected]> | 2018-12-09 12:24:58 +0600 |
|---|---|---|
| committer | zhengchao <[email protected]> | 2018-12-09 12:24:58 +0600 |
| commit | 74b1f6d63698f8325c04ea91d840cf25303c7b3a (patch) | |
| tree | 7d4d914fc9bc54c7735d04d6f3245b153216b594 | |
| parent | 1665395160274983bc16d7abaa23ea4a48fc4624 (diff) | |
修复 #4 ,将sd和fd初始化为-1,并在select前判断。
| -rw-r--r-- | src/main.c | 4 | ||||
| -rw-r--r-- | src/message.c | 10 |
2 files changed, 11 insertions, 3 deletions
@@ -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,
|
