diff --git a/drivers/media/dvb-core/dvb_frontend.c b/drivers/media/dvb-core/dvb_frontend.c index aa530690819373a41110fc60722e77978cad1046..79d2fac5075cfa36634b404e728988c6bb16f1ce 100644 --- a/drivers/media/dvb-core/dvb_frontend.c +++ b/drivers/media/dvb-core/dvb_frontend.c @@ -712,7 +712,7 @@ static int dvb_frontend_thread(void *data) /* FIXME: return an error if it fails */ dev_info(fe->dvb->device, "proceeding with FE task\n"); - } else { + } else if (fepriv->pipe_start_entity) { ret = media_entity_pipeline_start(fepriv->pipe_start_entity, &fepriv->pipe); if (ret) @@ -830,7 +830,8 @@ static int dvb_frontend_thread(void *data) } #ifdef CONFIG_MEDIA_CONTROLLER_DVB - media_entity_pipeline_stop(fepriv->pipe_start_entity); + if (fepriv->pipe_start_entity) + media_entity_pipeline_stop(fepriv->pipe_start_entity); fepriv->pipe_start_entity = NULL; #endif