From 76613ac224694281d80df86f7ffc095619516f25 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Fri, 27 Feb 2004 17:02:02 +0000 Subject: Set fe->state to FESTATE_IDLE on thread stop to ensure everything stops properly --- linux/drivers/media/dvb/dvb-core/dvb_frontend.c | 4 ++++ 1 file changed, 4 insertions(+) (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 ba82c56eb..3f501be37 100644 --- a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -5,6 +5,8 @@ * Marcus Metzler * Holger Waechtler * for convergence integrated media GmbH + * + * Copyright (C) 2004 Andrew de Quincey (tuning thread cleanup) * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -643,8 +645,10 @@ static void dvb_frontend_stop (struct dvb_frontend_data *fe) /* wait until the frontend thread has exited */ ret = wait_event_interruptible(fe->wait_queue,0 == fe->thread_pid); if (-ERESTARTSYS != ret) { + fe->state = FESTATE_IDLE; return; } + fe->state = FESTATE_IDLE; /* paranoia check in case a signal arrived */ if (fe->thread_pid) -- cgit v1.2.3