瀏覽代碼

fix a cppcheck issue

Julius Pfrommer 8 年之前
父節點
當前提交
8a4d8b326b
共有 1 個文件被更改,包括 9 次插入2 次删除
  1. 9 2
      src/server/ua_server.c

+ 9 - 2
src/server/ua_server.c

@@ -1365,13 +1365,20 @@ static UA_StatusCode register_server_with_discovery_server(UA_Server *server, co
         UA_Client_delete(client);
         return UA_STATUSCODE_BADOUTOFMEMORY;
     }
+
     for (size_t i = 0; i<server->config.applicationDescription.discoveryUrlsSize; i++) {
         retval |= UA_String_copy(&server->config.applicationDescription.discoveryUrls[i], &request.server.discoveryUrls[i]);
     }
+    if(retval != UA_STATUSCODE_GOOD) {
+        UA_RegisteredServer_deleteMembers(&request.server);
+        UA_Client_disconnect(client);
+        UA_Client_delete(client);
+        return UA_STATUSCODE_BADOUTOFMEMORY;
+    }
 
     /* add the discoveryUrls from the networklayers */
-    UA_String *disc = UA_realloc(request.server.discoveryUrls, sizeof(UA_String) *
-                                                                           (request.server.discoveryUrlsSize + server->config.networkLayersSize));
+    UA_String *disc = UA_realloc(request.server.discoveryUrls,
+                                 sizeof(UA_String) * (request.server.discoveryUrlsSize + server->config.networkLayersSize));
     if(!disc) {
         UA_RegisteredServer_deleteMembers(&request.server);
         UA_Client_disconnect(client);