aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/powerd
diff options
context:
space:
mode:
authorMark Johnston <markj@FreeBSD.org>2019-12-29 20:57:49 +0000
committerMark Johnston <markj@FreeBSD.org>2019-12-29 20:57:49 +0000
commit2a73387f1c342808c4939305f019deea9245ff25 (patch)
tree44657b9e5526c2baa00495637932fbb1727a61da /usr.sbin/powerd
parent758b2c02bbc10bf56d75b3b2bfeb1509ab3f09c7 (diff)
downloadsrc-2a73387f1c342808c4939305f019deea9245ff25.tar.gz
src-2a73387f1c342808c4939305f019deea9245ff25.zip
powerd(8): Fix a memory leak when we fail to read frequency levels.
PR: 242967 Submitted by: Hans Christian Woithe <chwoithe@yahoo.com> MFC after: 3 days
Notes
Notes: svn path=/head/; revision=356184
Diffstat (limited to 'usr.sbin/powerd')
-rw-r--r--usr.sbin/powerd/powerd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.sbin/powerd/powerd.c b/usr.sbin/powerd/powerd.c
index 974e3195476b..22aafa2005a9 100644
--- a/usr.sbin/powerd/powerd.c
+++ b/usr.sbin/powerd/powerd.c
@@ -196,8 +196,10 @@ read_freqs(int *numfreqs, int **freqs, int **power, int minfreq, int maxfreq)
return (-1);
if ((freqstr = malloc(len)) == NULL)
return (-1);
- if (sysctl(levels_mib, 4, freqstr, &len, NULL, 0))
+ if (sysctl(levels_mib, 4, freqstr, &len, NULL, 0)) {
+ free(freqstr);
return (-1);
+ }
*numfreqs = 1;
for (p = freqstr; *p != '\0'; p++)