diff --git a/Platform/user/configm/config-server/netconfig/bridge/brconfig.c b/Platform/user/configm/config-server/netconfig/bridge/brconfig.c index d9910b354..146ff7357 100644 --- a/Platform/user/configm/config-server/netconfig/bridge/brconfig.c +++ b/Platform/user/configm/config-server/netconfig/bridge/brconfig.c @@ -719,7 +719,7 @@ ret_code br_if_config_chk(uint source,uint *config_type, { strncpy(input, br_config.ports[i], INTERFACE_NAMSIZ); rpc_free(br_config.ports[i]); - + br_config.ports[i] = NULL; input += INTERFACE_NAMSIZ; } } @@ -730,7 +730,16 @@ exit: if(br_config.ports) { + for(i = 0; i < br_config.port_num; i++) + { + if(br_config.ports[i]) + { + rpc_free(br_config.ports[i]); + br_config.ports[i] = NULL; + } + } rpc_free(br_config.ports); + br_config.ports = NULL; } return ret;