diff options
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/installer/binaryformatengine.cpp | 2 | ||||
-rw-r--r-- | src/libs/installer/binaryformatenginehandler.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/libs/installer/binaryformatengine.cpp b/src/libs/installer/binaryformatengine.cpp index 9513d83c3..d493018ea 100644 --- a/src/libs/installer/binaryformatengine.cpp +++ b/src/libs/installer/binaryformatengine.cpp @@ -105,6 +105,7 @@ void BinaryFormatEngine::setFileName(const QString &file) path.chop(1); m_collection = m_collections.value(path.section(sep, 0, 0).toUtf8()); + m_collection.setName(path.section(sep, 0, 0).toUtf8()); m_resource = m_collection.resourceByName(path.section(sep, 1, 1).toUtf8()); } @@ -254,6 +255,7 @@ QStringList BinaryFormatEngine::entryList(QDir::Filters filters, const QStringLi foreach (const ResourceCollection &collection, m_collections) result.append(QString::fromUtf8(collection.name())); } + result.removeAll(QString()); // Remove empty names, will crash while using directory iterator. if (filterNames.isEmpty()) return result; diff --git a/src/libs/installer/binaryformatenginehandler.cpp b/src/libs/installer/binaryformatenginehandler.cpp index 8df9249bc..3388c5800 100644 --- a/src/libs/installer/binaryformatenginehandler.cpp +++ b/src/libs/installer/binaryformatenginehandler.cpp @@ -83,6 +83,8 @@ BinaryFormatEngineHandler::registerResource(const QString &fileName, const QStri const QByteArray resourceName = path.section(sep, 1, 1).toUtf8(); const QByteArray collectionName = path.section(sep, 0, 0).toUtf8(); + + m_resources[collectionName].setName(collectionName); m_resources[collectionName].appendResource(QSharedPointer<Resource>(new Resource(resourceName, resourcePath))); } |