summaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorMichael Hunold <devnull@localhost>2004-03-15 14:29:13 +0000
committerMichael Hunold <devnull@localhost>2004-03-15 14:29:13 +0000
commitee51ff2a1adca181e9614e0828b2e406e6bdcaa8 (patch)
treebbea4868732717eef77f8885109cfef04f4dac9f /linux
parent0a66276a0c6de1f89d391c0a4ff8fdb3ccd09629 (diff)
downloadmediapointer-dvb-s2-ee51ff2a1adca181e9614e0828b2e406e6bdcaa8.tar.gz
mediapointer-dvb-s2-ee51ff2a1adca181e9614e0828b2e406e6bdcaa8.tar.bz2
- 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...)
Diffstat (limited to 'linux')
-rw-r--r--linux/drivers/media/dvb/dvb-core/dvb_frontend.c4
1 files changed, 3 insertions, 1 deletions
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)) {