Explorar o código

Fix static code analysis errors reported by new coverity scan tool

bel2125 %!s(int64=5) %!d(string=hai) anos
pai
achega
970db3d611
Modificáronse 2 ficheiros con 5 adicións e 4 borrados
  1. 1 1
      resources/coverity_check.sh
  2. 4 3
      src/civetweb.c

+ 1 - 1
resources/coverity_check.sh

@@ -31,7 +31,7 @@ cp resources/Makefile.in-os cov_build/resources/
 cd cov_build
 
 # new scan build
-../../cov-analysis-linux64-2017.07/bin/cov-build  --dir cov-int make WITH_IPV6=1 WITH_WEBSOCKET=1 WITH_SERVER_STATS=1 WITH_EXPERIMENTAL=1
+../../cov-analysis-linux64-2019.03/bin/cov-build  --dir cov-int make WITH_IPV6=1 WITH_WEBSOCKET=1 WITH_SERVER_STATS=1 WITH_EXPERIMENTAL=1
 
 
 # pack build results for upload

+ 4 - 3
src/civetweb.c

@@ -9562,7 +9562,7 @@ static void *
 realloc2(void *ptr, size_t size)
 {
 	void *new_ptr = mg_realloc(ptr, size);
-	if (new_ptr == NULL) {
+	if ((new_ptr == NULL) && (size > 0)) {
 		mg_free(ptr);
 	}
 	return new_ptr;
@@ -17102,8 +17102,8 @@ mg_connect_client2(const char *host,
 	opts.port = port;
 	return mg_connect_client_impl(&opts,
 	                              is_ssl,
-	                              error->text,
-	                              error->text_buffer_size);
+	                              ((error != NULL) ? error->text : NULL),
+	                              ((error != NULL) ? error->text_buffer_size : 0));
 }
 #endif
 
@@ -19717,6 +19717,7 @@ mg_start_domain2(struct mg_context *ctx,
 				            config_options[AUTHENTICATION_DOMAIN].name);
 			}
 			mg_free(new_dom);
+			mg_unlock_context(ctx);
 			return -5;
 		}