Commit fa746aee authored by Michael Krufky's avatar Michael Krufky Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (6784): tda8290: prevent possible memory leak



Always call tda829x_release if tda829x_attach fails for a reason
other than failure to allocate memory for private structure.

Signed-off-by: default avatarMichael Krufky <mkrufky@linuxtv.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent c7919d52
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -704,7 +704,7 @@ int tda829x_attach(struct tuner *t)
	}

	if (tda829x_find_tuner(fe) < 0)
		return -EINVAL;
		goto fail;

	if (priv->ver & TDA8290) {
		tda8290_init_tuner(fe);
@@ -717,6 +717,11 @@ int tda829x_attach(struct tuner *t)
	t->mode = V4L2_TUNER_ANALOG_TV;

	return 0;

fail:
	tda829x_release(fe);
	fe->ops.analog_demod_ops = NULL;
	return -EINVAL;
}
EXPORT_SYMBOL_GPL(tda829x_attach);