diff options
author | Jesper Juhl <jesper.juhl@gmail.com> | 2006-06-23 13:05:27 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-23 18:43:04 +0400 |
commit | 94a6735cd67375029c2092e6d46f14b2721e6793 (patch) | |
tree | 1d9479e9c2900cdaf1ec7ded1b7a917c8528a3d8 /drivers/isdn/sc/ioctl.c | |
parent | 2eebb1925d25cfd7e7cd2eb18ac4d4e6d189dba0 (diff) | |
download | linux-94a6735cd67375029c2092e6d46f14b2721e6793.tar.xz |
[PATCH] i4l: memory leak fix for sc_ioctl().
Fix leak of `rcvmsg' in sc_ioctl().
There are two returns in the switch in sc_ioctl (the SCIOCSTART case) that
may leak `rcvmsg'. This patch fixes that by adding a kfree() call at the
beginning of that case.
Bug found by the coverity checker as #1098
Eric Sesterhenn send me a patch to fix the leak(s) by adding 2 kfree()
calls before the returns, I changed that into just a single call at the
beginning.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/isdn/sc/ioctl.c')
-rw-r--r-- | drivers/isdn/sc/ioctl.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/isdn/sc/ioctl.c b/drivers/isdn/sc/ioctl.c index f4f71226a078..57c4ab96d136 100644 --- a/drivers/isdn/sc/ioctl.c +++ b/drivers/isdn/sc/ioctl.c @@ -97,6 +97,7 @@ int sc_ioctl(int card, scs_ioctl *data) case SCIOCSTART: { + kfree(rcvmsg); pr_debug("%s: SCIOSTART: ioctl received\n", sc_adapter[card]->devicename); if(sc_adapter[card]->EngineUp) { |