[media] DVB, DiB9000: Fix leak in dib9000_attach()
If the second memory allocation in dib9000_attach() fails, we'll leak the memory allocated by the first. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Cc: Patrick Boettcher <patrick.boettcher@dibcom.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
b7101de3ff
commit
451a51b218
|
@ -2255,8 +2255,10 @@ struct dvb_frontend *dib9000_attach(struct i2c_adapter *i2c_adap, u8 i2c_addr, c
|
||||||
if (st == NULL)
|
if (st == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
fe = kzalloc(sizeof(struct dvb_frontend), GFP_KERNEL);
|
fe = kzalloc(sizeof(struct dvb_frontend), GFP_KERNEL);
|
||||||
if (fe == NULL)
|
if (fe == NULL) {
|
||||||
|
kfree(st);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
memcpy(&st->chip.d9.cfg, cfg, sizeof(struct dib9000_config));
|
memcpy(&st->chip.d9.cfg, cfg, sizeof(struct dib9000_config));
|
||||||
st->i2c.i2c_adap = i2c_adap;
|
st->i2c.i2c_adap = i2c_adap;
|
||||||
|
|
Loading…
Reference in New Issue