summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authoralfred <alfred@FreeBSD.org>2002-10-19 02:07:35 +0000
committeralfred <alfred@FreeBSD.org>2002-10-19 02:07:35 +0000
commit657dbda997f0184d8b251b77c2757f549078d42c (patch)
tree9c1abf9c6490ad8efee376e6dc922a7ab268878e /sys
parent3832720b63ac0e4bc560d91a97d876c476780361 (diff)
downloadFreeBSD-src-657dbda997f0184d8b251b77c2757f549078d42c.zip
FreeBSD-src-657dbda997f0184d8b251b77c2757f549078d42c.tar.gz
Don't leak memory in semop(2). (Fix a bug I introduced in rev 1.55.)
Detective work by: jake
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/sysv_sem.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/sysv_sem.c b/sys/kern/sysv_sem.c
index b7df52a..737ddba 100644
--- a/sys/kern/sysv_sem.c
+++ b/sys/kern/sysv_sem.c
@@ -872,7 +872,7 @@ semop(td, uap)
{
int semid = uap->semid;
u_int nsops = uap->nsops;
- struct sembuf *sops = NULL;
+ struct sembuf *sops;
struct semid_ds *semaptr;
struct sembuf *sopptr = 0;
struct sem *semptr = 0;
@@ -1128,6 +1128,7 @@ done:
td->td_retval[0] = 0;
done2:
mtx_unlock(sema_mtxp);
+ free(sops, M_SEM);
return (error);
}
OpenPOWER on IntegriCloud