- if (_config->FindB("Debug::aptcdrom",false) == true)
- std::clog << "found translations: " << Dir->d_name << "\n";
- string file = Dir->d_name;
- if(file.substr(file.size()-3,file.size()) == ".gz" ||
- file.substr(file.size()-3,file.size()) == ".xz")
- file = file.substr(0,file.size()-3);
- if(file.substr(file.size()-4,file.size()) == ".bz2")
- file = file.substr(0,file.size()-4);
- TransList.push_back(CD+"i18n/"+ file);
+ string fileext = flExtension(file);
+ if (file == fileext)
+ fileext.clear();
+ else if (fileext.empty() == false)
+ fileext = "." + fileext;
+
+ if (c->Extension == fileext)
+ {
+ if (_config->FindB("Debug::aptcdrom",false) == true)
+ std::clog << "Found translation " << Dir->d_name << " in " << CD << "i18n/" << std::endl;
+ file.erase(file.size() - fileext.size());
+ TransList.push_back(CD + "i18n/" + file);
+ break;
+ }