From cc74cba39690f94d622b84f6a6196e8348ef23d1 Mon Sep 17 00:00:00 2001 From: Frank Schmirler Date: Fri, 2 Sep 2011 13:11:13 +0200 Subject: check availability of channel if VTP command TUNE is called without prior PROV call (e.g. client side EPG scan) --- server/connectionVTP.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'server') diff --git a/server/connectionVTP.c b/server/connectionVTP.c index 64b5f37..8224d1d 100644 --- a/server/connectionVTP.c +++ b/server/connectionVTP.c @@ -1089,14 +1089,16 @@ bool cConnectionVTP::CmdTUNE(char *Opts) return Respond(550, "Undefined channel \"%s\"", Opts); if (chan != m_TuneChannel) { - esyslog("streamdev-server TUNE %s: Priority unknown - using 0", Opts); + isyslog("streamdev-server TUNE %s: Priority unknown - using 0", Opts); prio = 0; + if (!ProvidesChannel(chan, prio)) + return Respond(560, "Channel not available (ProvidesChannel)"); } if ((dev = GetDevice(chan, prio)) == NULL) - return Respond(560, "Channel not available"); + return Respond(560, "Channel not available (GetDevice)"); if (!dev->SwitchChannel(chan, false)) - return Respond(560, "Channel not available"); + return Respond(560, "Channel not available (SwitchChannel)"); delete m_LiveStreamer; m_LiveStreamer = new cStreamdevLiveStreamer(prio, this); -- cgit v1.2.3