X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/0a35f28652b7c5c175f4d90d9cce7c21c544db99..46108978fb72b40c7feeb52c2a7abbd437f8751d:/lib/base/estring.cpp diff --git a/lib/base/estring.cpp b/lib/base/estring.cpp index 429c261f..f1d50ccc 100644 --- a/lib/base/estring.cpp +++ b/lib/base/estring.cpp @@ -10,10 +10,10 @@ std::string buildShortName( const std::string &str ) std::string tmp; static char stropen[3] = { 0xc2, 0x86, 0x00 }; static char strclose[3] = { 0xc2, 0x87, 0x00 }; - unsigned int open=std::string::npos-1; + size_t open=std::string::npos-1; while ( (open = str.find(stropen, open+2)) != std::string::npos ) { - unsigned int close = str.find(strclose, open); + size_t close = str.find(strclose, open); if ( close != std::string::npos ) tmp+=str.substr( open+2, close-(open+2) ); } @@ -27,9 +27,9 @@ std::string getNum(int val, int sys) char buf[12]; if (sys == 10) - std::snprintf(buf, 12, "%i", val); + snprintf(buf, 12, "%i", val); else if (sys == 16) - std::snprintf(buf, 12, "%X", val); + snprintf(buf, 12, "%X", val); std::string res; res.assign(buf); @@ -362,7 +362,7 @@ std::string convertDVBUTF8(const unsigned char *data, int len, int table, int ts switch(n) { case 12: - eDebug("unsup. ISO8859-12 enc.", n); + eDebug("unsup. ISO8859-12 enc."); break; default: table=n; @@ -633,3 +633,12 @@ void makeUpper(std::string &s) { std::transform(s.begin(), s.end(), s.begin(), (int(*)(int)) toupper); } + +std::string replace_all(const std::string &in, const std::string &entity, const std::string &symbol) +{ + std::string out = in; + std::string::size_type loc = 0; + while (( loc = out.find(entity, loc)) != std::string::npos ) + out.replace(loc, entity.length(), symbol); + return out; +}