Browse code

core: use same condition for extra_params in create_via_hf()

Daniel-Constantin Mierla authored on 07/04/2021 07:53:39
Showing 1 changed files
... ...
@@ -2992,12 +2992,14 @@ char* create_via_hf(unsigned int *len,
2992 2992
 		/* params so far + ';rport' + '\0' */
2993 2993
 		via = (char*)pkg_malloc(extra_params.len+RPORT_LEN);
2994 2994
 		if(via==0) {
2995
-		        PKG_MEM_ERROR;
2995
+			PKG_MEM_ERROR;
2996 2996
 			if (extra_params.s) pkg_free(extra_params.s);
2997 2997
 			return 0;
2998 2998
 		}
2999
-		if(extra_params.len!=0) {
2999
+		if(extra_params.s!=NULL && extra_params.len>0) {
3000 3000
 			memcpy(via, extra_params.s, extra_params.len);
3001
+		}
3002
+		if(extra_params.s!=NULL) {
3001 3003
 			pkg_free(extra_params.s);
3002 3004
 		}
3003 3005
 		memcpy(via + extra_params.len, RPORT, RPORT_LEN-1);
... ...
@@ -3018,8 +3020,10 @@ char* create_via_hf(unsigned int *len,
3018 3020
 				if (extra_params.s) pkg_free(extra_params.s);
3019 3021
 				return 0;
3020 3022
 			}
3021
-			if(extra_params.len != 0) {
3023
+			if(extra_params.s!=NULL && extra_params.len>0) {
3022 3024
 				memcpy(via, extra_params.s, extra_params.len);
3025
+			}
3026
+			if(extra_params.s!=NULL) {
3023 3027
 				pkg_free(extra_params.s);
3024 3028
 			}
3025 3029
 			memcpy(via + extra_params.len, sbuf, slen);
... ...
@@ -3038,12 +3042,14 @@ char* create_via_hf(unsigned int *len,
3038 3042
 		if(xparams.len>0) {
3039 3043
 			via = (char*)pkg_malloc(extra_params.len+xparams.len+2);
3040 3044
 			if(via==0) {
3041
-			        PKG_MEM_ERROR;
3045
+				PKG_MEM_ERROR;
3042 3046
 				if (extra_params.s) pkg_free(extra_params.s);
3043 3047
 				return 0;
3044 3048
 			}
3045
-			if(extra_params.len != 0) {
3049
+			if(extra_params.s!=NULL && extra_params.len>0) {
3046 3050
 				memcpy(via, extra_params.s, extra_params.len);
3051
+			}
3052
+			if(extra_params.s!=NULL) {
3047 3053
 				pkg_free(extra_params.s);
3048 3054
 			}
3049 3055
 			/* add ';' between via parameters */