diff options
author | Alexander Leidinger <netchild@FreeBSD.org> | 2006-02-05 17:10:52 +0000 |
---|---|---|
committer | Alexander Leidinger <netchild@FreeBSD.org> | 2006-02-05 17:10:52 +0000 |
commit | f31eef8b22883b431881122bf58d6625f2a3114b (patch) | |
tree | 829cf4224cf734252c93482dbdc75e5c2354e32d /sys/dev/sound/isa | |
parent | 95fea57c65ad8c2687ab64624731ac31239167ad (diff) | |
download | src-f31eef8b22883b431881122bf58d6625f2a3114b.tar.gz src-f31eef8b22883b431881122bf58d6625f2a3114b.zip |
Fix memory leak in some failure cases.
CID: 420
Found with: Coverity Prevent(tm)
Notes
Notes:
svn path=/head/; revision=155336
Diffstat (limited to 'sys/dev/sound/isa')
-rw-r--r-- | sys/dev/sound/isa/mss.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/sound/isa/mss.c b/sys/dev/sound/isa/mss.c index 967daa99b385..05005124311a 100644 --- a/sys/dev/sound/isa/mss.c +++ b/sys/dev/sound/isa/mss.c @@ -2027,8 +2027,10 @@ pnpmss_attach(device_t dev) mss->conf_rid = 3; mss->bd_id = MD_OPTI924; mss->bd_flags |= BD_F_924PNP; - if(opti_init(dev, mss) != 0) + if(opti_init(dev, mss) != 0) { + free(mss, M_DEVBUF); return ENXIO; + } break; case 0x1022b839: /* NMX2210 */ @@ -2037,8 +2039,10 @@ pnpmss_attach(device_t dev) case 0x01005407: /* AZT0001 */ /* put into MSS mode first (snatched from NetBSD) */ - if (azt2320_mss_mode(mss, dev) == -1) + if (azt2320_mss_mode(mss, dev) == -1) { + free(mss, M_DEVBUF); return ENXIO; + } mss->bd_flags |= BD_F_MSS_OFFSET; mss->io_rid = 2; |