From ee51ff2a1adca181e9614e0828b2e406e6bdcaa8 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Mon, 15 Mar 2004 14:29:13 +0000 Subject: - if dvb_frontend_internal_ioctl() returns an error code, be sure to deliver it to the calling application, don't ignore it (fixes the bug that the frontend0 doesn't respond properly to unknown ioctls...) --- linux/drivers/media/dvb/dvb-core/dvb_frontend.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'linux') diff --git a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c index ae3d3c906..5d9d9f64d 100644 --- a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -799,10 +799,12 @@ static int dvb_frontend_ioctl (struct inode *inode, struct file *file, sizeof (struct dvb_frontend_parameters)); /* fall-through... */ default: - dvb_frontend_internal_ioctl (&fe->frontend, cmd, parg); + err = dvb_frontend_internal_ioctl (&fe->frontend, cmd, parg); }; up (&fe->sem); + if (err < 0) + return err; // Force the CAN_INVERSION_AUTO bit on. If the frontend doesn't do it, it is done for it. if ((cmd == FE_GET_INFO) && (err == 0)) { -- cgit v1.2.3