summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb
diff options
context:
space:
mode:
authorYe Jianjun (Joey <joeyye@trident.com.cn>2005-09-09 13:02:44 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-09 13:57:40 -0700
commit43bc3f41e4b1bb88adaef593f50c1f032bf0e876 (patch)
treee9f62f12ad5e8d554ae389452cd6425faad8cdf3 /drivers/media/dvb
parent54127d64d2094207e0e12a4a9eec33573f25f7ac (diff)
[PATCH] dvb: usb: dtt200u: copy frontend_ops before modifying
Fix: copy frontend_ops before modifying Signed-off-by: Ye Jianjun (Joey) <joeyye@trident.com.cn> Signed-off-by: Patrick Boettcher <pb@linuxtv.org> Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/media/dvb')
-rw-r--r--drivers/media/dvb/dvb-usb/dtt200u-fe.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/dvb/dvb-usb/dtt200u-fe.c b/drivers/media/dvb/dvb-usb/dtt200u-fe.c
index b032523b07b..0a94ec22aeb 100644
--- a/drivers/media/dvb/dvb-usb/dtt200u-fe.c
+++ b/drivers/media/dvb/dvb-usb/dtt200u-fe.c
@@ -18,6 +18,7 @@ struct dtt200u_fe_state {
struct dvb_frontend_parameters fep;
struct dvb_frontend frontend;
+ struct dvb_frontend_ops ops;
};
static int dtt200u_fe_read_status(struct dvb_frontend* fe, fe_status_t *stat)
@@ -163,8 +164,9 @@ struct dvb_frontend* dtt200u_fe_attach(struct dvb_usb_device *d)
deb_info("attaching frontend dtt200u\n");
state->d = d;
+ memcpy(&state->ops,&dtt200u_fe_ops,sizeof(struct dvb_frontend_ops));
- state->frontend.ops = &dtt200u_fe_ops;
+ state->frontend.ops = &state->ops;
state->frontend.demodulator_priv = state;
goto success;