diff --git a/HISTORY b/HISTORY index d75c189..fb48b1a 100644 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,7 @@ VDR Plugin 'streamdev' Revision History --------------------------------------- +- Fixed priority handling, messed up when adding multi-device support - Added HTTP "Server" header (suggested by hivdr) - Ignore dummy file extensions (.ts, .vob, .vdr) when parsing HTTP URIs - Select start position for replaying a recording by parameter pos=. Supported diff --git a/client/device.c b/client/device.c index ef16690..8a19c25 100644 --- a/client/device.c +++ b/client/device.c @@ -101,7 +101,7 @@ bool cStreamdevDevice::ProvidesChannel(const cChannel *Channel, int Priority, if (m_Disabled || Channel == m_DenyChannel) return false; - Dprintf("ProvidesChannel, Channel=%s, Prio=%d\n", Channel->Name(), Priority); + Dprintf("ProvidesChannel, Channel=%s, Priority=%d, SocketPrio=%d\n", Channel->Name(), Priority, m_ClientSocket->Priority()); if (StreamdevClientSetup.MinPriority <= StreamdevClientSetup.MaxPriority) { @@ -296,8 +296,8 @@ void cStreamdevDevice::UpdatePriority(bool SwitchingChannels) const { if (m_ClientSocket->SupportsPrio() && m_ClientSocket->DataSocket(siLive)) { int Priority = this->Priority(); // override TRANSFERPRIORITY (-1) with live TV priority from setup - if (this == cDevice::ActualDevice() && m_ClientSocket->Priority() == TRANSFERPRIORITY) { - int Priority = StreamdevClientSetup.LivePriority; + if (Priority == TRANSFERPRIORITY && this == cDevice::ActualDevice()) { + Priority = StreamdevClientSetup.LivePriority; // temporarily lower priority if (SwitchingChannels) Priority--;