diff --git a/src/gui/filebrowser.cpp b/src/gui/filebrowser.cpp index e97ceabcc..b42ec52ed 100644 --- a/src/gui/filebrowser.cpp +++ b/src/gui/filebrowser.cpp @@ -480,6 +480,10 @@ printf("CFileBrowser::readDir_sc: read done, size %d\n", (int)answer.size()); const char *eptr = xmlGetAttribute(element, "name"); if(eptr) file.Name = eptr; + std::string fname_temp = file.Name; + fname_temp = str_replace(" ", "%20", fname_temp); + fname_temp = str_replace("&", "%26", fname_temp); + file.Name = fname_temp; file.Url = sc_get_genre + file.Name; file.Size = 0; file.Time = 0; @@ -1214,6 +1218,11 @@ void CFileBrowser::paintItem(unsigned int pos) if ( !actual_file->Name.empty() ) { + std::string fname_temp = actual_file->Name; + fname_temp = str_replace("%20", " ", fname_temp); + fname_temp = str_replace("%26", "&", fname_temp); + actual_file->Name = fname_temp; + if (currpos == selected) CVFD::getInstance()->showMenuText(0, FILESYSTEM_ENCODING_TO_UTF8_STRING(actual_file->getFileName()).c_str(), -1, true); // UTF-8