X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fbase%2Fencoding.cpp;h=5d6617d998d49b3ff222f6bdd8ed71876a1fa688;hp=e865169913ac8663bbbd6581484b847520e6bb26;hb=0ebee4265be628e8b2c354a071e9fab37303c663;hpb=f94e2c9821eb8784ca03b7122485d4720ec6d6e6 diff --git a/lib/base/encoding.cpp b/lib/base/encoding.cpp index e865169..5d6617d 100644 --- a/lib/base/encoding.cpp +++ b/lib/base/encoding.cpp @@ -1,9 +1,18 @@ #include #include -#include eDVBTextEncodingHandler encodingHandler; // the one and only instance +inline char toupper(char c) +{ + switch (c) + { + case 'a' ... 'z': + return c-32; + } + return c; +} + eDVBTextEncodingHandler::eDVBTextEncodingHandler() { const char * file=DATADIR "/enigma2/encoding.conf"; @@ -19,7 +28,13 @@ eDVBTextEncodingHandler::eDVBTextEncodingHandler() continue; int tsid, onid, encoding; if ( sscanf( line, "%s ISO8859-%d", countrycode, &encoding ) == 2 ) + { + m_CountryCodeDefaultMapping[countrycode]=encoding; + countrycode[0]=toupper(countrycode[0]); + countrycode[1]=toupper(countrycode[1]); + countrycode[2]=toupper(countrycode[2]); m_CountryCodeDefaultMapping[countrycode]=encoding; + } else if ( (sscanf( line, "0x%x 0x%x ISO8859-%d", &tsid, &onid, &encoding ) == 3 ) ||(sscanf( line, "%d %d ISO8859-%d", &tsid, &onid, &encoding ) == 3 ) ) m_TransponderDefaultMapping[(tsid<<16)|onid]=encoding;