From 01732ebaac701638aab5d7b63ea2ee14452afd33 Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Sat, 31 Dec 2011 08:04:25 -0300 Subject: [media] flexcop: handle errors from dvb_net_init Bail out if dvb_net_init encounters an error (for example an out-of-memory condition), now that it reports them. [mchehab@redhat.com: CodingStyle fix: don't use "if ((ret = foo()) < 0)"] Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab --- drivers/media/dvb/b2c2/flexcop.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'drivers') diff --git a/drivers/media/dvb/b2c2/flexcop.c b/drivers/media/dvb/b2c2/flexcop.c index 2df1b0214dc..4d3caca466f 100644 --- a/drivers/media/dvb/b2c2/flexcop.c +++ b/drivers/media/dvb/b2c2/flexcop.c @@ -117,11 +117,17 @@ static int flexcop_dvb_init(struct flexcop_device *fc) goto err_connect_frontend; } - dvb_net_init(&fc->dvb_adapter, &fc->dvbnet, &fc->demux.dmx); + ret = dvb_net_init(&fc->dvb_adapter, &fc->dvbnet, &fc->demux.dmx); + if (ret < 0) { + err("dvb_net_init failed: error %d", ret); + goto err_net; + } fc->init_state |= FC_STATE_DVB_INIT; return 0; +err_net: + fc->demux.dmx.disconnect_frontend(&fc->demux.dmx); err_connect_frontend: fc->demux.dmx.remove_frontend(&fc->demux.dmx, &fc->mem_frontend); err_dmx_add_mem_frontend: -- cgit v1.2.3