summaryrefslogtreecommitdiff
path: root/security/tea-total/files/patch-getarg.c
blob: 47c7f64b3533fcc407fc09302319d82fb96fba5d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--- getarg.c.orig	Sun Nov 24 04:04:44 2002
+++ getarg.c	Thu May  9 04:30:09 2002
@@ -110,7 +110,7 @@
 
 	/* Copy the arguments, ignoring the first argument (the program name) */
 	for(i = 1; i < argc; i++) {
-		len = strlen(argv[i]);
+		len = strlen(argv[i]) + 1;
 		if(!(state->argv[i - 1] = malloc(len))) {
 			/* It failed, so free the list and return */
 			while(i-- > 1) free(state->argv[i]);
@@ -199,7 +199,6 @@
 					return(state->realargv[i + 2]);
 				} else continue;
 			}
-			
 
 			/* For each character until the terminating zero */
 			for(p = &state->argv[i][1]; *p; p++) {
@@ -235,7 +234,7 @@
 					if((!*++p)&&(p = next_arg(state, i))) {
 						*p = GETARG_USEDFLAG;
 						return(state->realargv[i + 2]);
-					} else continue;
+					} else return NULL;
 				}
 			}