diff options
author | Kai Koehne <kai.koehne@digia.com> | 2013-06-19 13:13:15 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@digia.com> | 2013-06-20 07:41:05 +0200 |
commit | 06ad8196d8a82acdf59f62ac81b19cca56a84006 (patch) | |
tree | 7e2a544fe8d5f6a9981277a89b8d565815e9e5bb /src/tools | |
parent | 57a6f04ce6f72737e39c7504d01ff61249cbfc6e (diff) | |
download | qt-creator-06ad8196d8a82acdf59f62ac81b19cca56a84006.tar.gz |
sdktool: Check for return value of mkpath
Change-Id: I946e2d5195ea0f9813fe7ebaa7dc2434579abbe5
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/sdktool/operation.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/tools/sdktool/operation.cpp b/src/tools/sdktool/operation.cpp index 4083d00bdd..26813b82d0 100644 --- a/src/tools/sdktool/operation.cpp +++ b/src/tools/sdktool/operation.cpp @@ -120,9 +120,14 @@ bool Operation::save(const QVariantMap &map, const QString &file) const return false; } - Utils::FileName dir = path.parentDir(); - if (!dir.toFileInfo().exists()) - QDir(dir.toString()).mkpath(dir.toString()); + Utils::FileName dirName = path.parentDir(); + QDir dir(dirName.toString()); + if (!dir.exists() && !dir.mkpath(dirName.toString())) { + std::cerr << "Error: Could not create directory " << qPrintable(dirName.toString()) + << "." << std::endl; + return false; + } + Utils::PersistentSettingsWriter writer(path, QLatin1String("unknown")); return writer.save(map, 0) |