From 191cade7c45bee53df2776ff5bb3f26b2cdafc12 Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Thu, 27 Apr 2006 12:23:00 +0000 Subject: [PATCH] fix -T -C channellisting stuff --- lib/dvb/db.cpp | 2 +- lib/python/Screens/ChannelSelection.py | 2 +- lib/service/iservice.h | 15 ++++++++++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/lib/dvb/db.cpp b/lib/dvb/db.cpp index 0b1d4b54..1f38d152 100644 --- a/lib/dvb/db.cpp +++ b/lib/dvb/db.cpp @@ -194,7 +194,7 @@ int eDVBService::checkFilter(const eServiceReferenceDVB &ref, const eDVBChannelQ res = 0; break; case eDVBChannelQuery::tSatellitePosition: - res = (ref.getDVBNamespace().get() >> 16) == query.m_int; + res = ((unsigned int)ref.getDVBNamespace().get())>>16 == query.m_int; break; case eDVBChannelQuery::tChannelID: { diff --git a/lib/python/Screens/ChannelSelection.py b/lib/python/Screens/ChannelSelection.py index 7178ac68..9e29839a 100644 --- a/lib/python/Screens/ChannelSelection.py +++ b/lib/python/Screens/ChannelSelection.py @@ -692,7 +692,7 @@ class ChannelSelectionBase(Screen): service = servicelist.getNext() if not service.valid(): #check if end of list break - orbpos = service.getData(4) >> 16 + orbpos = service.getUnsignedData(4) >> 16 if service.getPath().find("FROM PROVIDER") != -1: service_name = _("Providers") else: diff --git a/lib/service/iservice.h b/lib/service/iservice.h index fb56175d..3a0e32cd 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -51,13 +51,26 @@ public: std::string getPath() { return path; } void setPath( const std::string &n ) { path=n; } - unsigned int getData(unsigned int num) const + unsigned int getUnsignedData(unsigned int num) const { if ( num < sizeof(data)/sizeof(int) ) return data[num]; return 0; } + int getData(unsigned int num) const + { + if ( num < sizeof(data)/sizeof(int) ) + return data[num]; + return 0; + } + + void setUnsignedData(unsigned int num, unsigned int val) + { + if ( num < sizeof(data)/sizeof(int) ) + data[num] = val; + } + void setData(unsigned int num, int val) { if ( num < sizeof(data)/sizeof(int) ) -- 2.30.2