瀏覽代碼

memleak fixed

Stasik0 10 年之前
父節點
當前提交
0b7bd164eb
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      examples/src/networklayer.c

+ 3 - 3
examples/src/networklayer.c

@@ -138,17 +138,17 @@ void* NL_TCP_reader(NL_Connection *c) {
 		DBG_VERBOSE(printf("NL_TCP_reader - leave close\n"));
 		DBG_VERBOSE(printf("NL_TCP_reader - leave close\n"));
 		c->connection.connectionState = CONNECTIONSTATE_CLOSED;
 		c->connection.connectionState = CONNECTIONSTATE_CLOSED;
 
 
-		UA_ByteString_deleteMembers(&readBuffer);
-
 #ifndef MULTITHREADING
 #ifndef MULTITHREADING
 		DBG_VERBOSE(printf("NL_TCP_reader - search element to remove\n"));
 		DBG_VERBOSE(printf("NL_TCP_reader - search element to remove\n"));
 		UA_list_Element* lec = UA_list_search(&(c->networkLayer->connections),NL_ConnectionComparer,c);
 		UA_list_Element* lec = UA_list_search(&(c->networkLayer->connections),NL_ConnectionComparer,c);
 		DBG_VERBOSE(printf("NL_TCP_reader - remove connection for handle=%d\n",((NL_Connection*)lec->payload)->connection.connectionHandle));
 		DBG_VERBOSE(printf("NL_TCP_reader - remove connection for handle=%d\n",((NL_Connection*)lec->payload)->connection.connectionHandle));
 		UA_list_removeElement(lec,UA_NULL);
 		UA_list_removeElement(lec,UA_NULL);
 		DBG_VERBOSE(UA_list_iteratePayload(&(c->networkLayer->connections),NL_Connection_printf));
 		DBG_VERBOSE(UA_list_iteratePayload(&(c->networkLayer->connections),NL_Connection_printf));
-		UA_free(c);
 #endif
 #endif
 	}
 	}
+	
+	UA_ByteString_deleteMembers(&readBuffer);
+	UA_free(c);
 	return UA_NULL;
 	return UA_NULL;
 }
 }