Don't change working directory when looking for tranlations

And only replace 'bin' if there is a bin in the path...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2013-12-06 12:03:12 -08:00
parent 9b7b477d7c
commit e015effb47
2 changed files with 7 additions and 4 deletions

View file

@ -403,10 +403,11 @@ QString getSubsurfaceDataPath(QString folderToFind)
// next check for the Linux typical $(prefix)/share/subsurface
execdir = QCoreApplication::applicationDirPath();
folder = QDir(execdir.replace("bin", "share/subsurface/").append(folderToFind));
if (folder.exists())
return folder.absolutePath();
if (execdir.contains("bin")) {
folder = QDir(execdir.replace("bin", "share/subsurface/").append(folderToFind));
if (folder.exists())
return folder.absolutePath();
}
// then look for the usual location on a Mac
execdir = QCoreApplication::applicationDirPath();
folder = QDir(execdir.append("/../Resources/share/").append(folderToFind));

View file

@ -1766,6 +1766,7 @@ LanguageModel::LanguageModel(QObject* parent): QAbstractListModel(parent)
{
QSettings s;
QDir d;
QString cwd = d.currentPath();
d.setCurrent( getSubsurfaceDataPath("translations") );
QStringList result = d.entryList();
Q_FOREACH(const QString& s, result){
@ -1774,6 +1775,7 @@ LanguageModel::LanguageModel(QObject* parent): QAbstractListModel(parent)
}
languages.push_back( (s == "subsurface_source.qm") ? "English" : s);
}
d.setCurrent(cwd);
}
QVariant LanguageModel::data(const QModelIndex& index, int role) const