Make sure to generate qmake friendly file names

According to Ossi the only safe characters in a path for qmake are
alphanumerical, underscore, dot and dash.

Task-number: QTCREATORBUG-10980
Change-Id: Ibacbfeb7f04f1f0524093f1d8fce637ea4ae6fd6
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
Tobias Hunger
2013-12-09 12:56:24 +01:00
parent b684f0afb5
commit 2d4cfc90fc
5 changed files with 33 additions and 6 deletions

View File

@@ -307,14 +307,14 @@ QStringList Kit::candidateNameList(const QString &base) const
QString Kit::fileSystemFriendlyName() const
{
QString name = Utils::FileUtils::fileSystemFriendlyName(displayName());
QString name = Utils::FileUtils::qmakeFriendlyName(displayName());
foreach (Kit *i, KitManager::kits()) {
if (i == this)
continue;
if (name == Utils::FileUtils::fileSystemFriendlyName(i->displayName())) {
if (name == Utils::FileUtils::qmakeFriendlyName(i->displayName())) {
// append part of the kit id: That should be unique enough;-)
// Leading { will be turned into _ which should be fine.
name = Utils::FileUtils::fileSystemFriendlyName(name + QLatin1Char('_') + (id().toString().left(7)));
name = Utils::FileUtils::qmakeFriendlyName(name + QLatin1Char('_') + (id().toString().left(7)));
break;
}
}