aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYe Jianjun (Joey <joeyye@trident.com.cn>2005-09-09 16:02:44 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-09 16:57:40 -0400
commit43bc3f41e4b1bb88adaef593f50c1f032bf0e876 (patch)
treee9f62f12ad5e8d554ae389452cd6425faad8cdf3
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>
-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 b032523b07bc..0a94ec22aeb8 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 {
18 18
19 struct dvb_frontend_parameters fep; 19 struct dvb_frontend_parameters fep;
20 struct dvb_frontend frontend; 20 struct dvb_frontend frontend;
21 struct dvb_frontend_ops ops;
21}; 22};
22 23
23static int dtt200u_fe_read_status(struct dvb_frontend* fe, fe_status_t *stat) 24static 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)
163 deb_info("attaching frontend dtt200u\n"); 164 deb_info("attaching frontend dtt200u\n");
164 165
165 state->d = d; 166 state->d = d;
167 memcpy(&state->ops,&dtt200u_fe_ops,sizeof(struct dvb_frontend_ops));
166 168
167 state->frontend.ops = &dtt200u_fe_ops; 169 state->frontend.ops = &state->ops;
168 state->frontend.demodulator_priv = state; 170 state->frontend.demodulator_priv = state;
169 171
170 goto success; 172 goto success;