summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2005-03-09 12:16:45 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2005-03-09 12:16:45 +0000
commit628b83cd08060b30a620cc1421b872f44b7441f5 (patch)
tree61a723e730e480c91a0ee0e9679c38c6bf0d1e68
parent3dc2fe25dc3adc6394ea4370fa0f8ebabca4c077 (diff)
Notes
-rw-r--r--sys/kern/kern_environment.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/kern_environment.c b/sys/kern/kern_environment.c
index 550be83f6a9d..8c488644dc78 100644
--- a/sys/kern/kern_environment.c
+++ b/sys/kern/kern_environment.c
@@ -458,9 +458,10 @@ getenv_quad(const char *name, quad_t *data)
if (value == NULL)
return (0);
iv = strtoq(value, &vtp, 0);
- freeenv(value);
- if (vtp == value || (vtp[0] != '\0' && vtp[1] != '\0'))
+ if (vtp == value || (vtp[0] != '\0' && vtp[1] != '\0')) {
+ freeenv(value);
return (0);
+ }
switch (vtp[0]) {
case 't': case 'T':
iv *= 1024;
@@ -473,9 +474,11 @@ getenv_quad(const char *name, quad_t *data)
case '\0':
break;
default:
+ freeenv(value);
return (0);
}
*data = iv;
+ freeenv(value);
return (1);
}