Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/keeshare/ShareObserver.cpp')
-rw-r--r--src/keeshare/ShareObserver.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/keeshare/ShareObserver.cpp b/src/keeshare/ShareObserver.cpp
index 63d8358c2..33f5ed1f6 100644
--- a/src/keeshare/ShareObserver.cpp
+++ b/src/keeshare/ShareObserver.cpp
@@ -84,7 +84,7 @@ namespace
key.openKey(QString());
const auto signer = Signature();
if (!signer.verify(data, sign.signature, key)) {
- qCritical("Invalid signature for sharing container %s.", qPrintable(reference.path));
+ qCritical("Invalid signature for shared container %s.", qPrintable(reference.path));
return {Invalid, KeeShareSettings::Certificate()};
}
@@ -190,7 +190,6 @@ void ShareObserver::reinitialize()
KeeShareSettings::Reference newReference;
};
- const auto active = KeeShare::active();
QList<Update> updated;
const QList<Group*> groups = m_db->rootGroup()->groupsRecursive(true);
for (Group* group : groups) {
@@ -202,9 +201,7 @@ void ShareObserver::reinitialize()
m_groupToReference.remove(couple.group);
m_referenceToGroup.remove(couple.oldReference);
m_shareToGroup.remove(couple.oldReference.path);
- if (couple.newReference.isValid()
- && ((active.in && couple.newReference.isImporting())
- || (active.out && couple.newReference.isExporting()))) {
+ if (couple.newReference.isValid()) {
m_groupToReference[couple.group] = couple.newReference;
m_referenceToGroup[couple.newReference] = couple.group;
m_shareToGroup[couple.newReference.path] = couple.group;
@@ -595,7 +592,8 @@ Database* ShareObserver::exportIntoContainer(const KeeShareSettings::Reference&
{
const auto* sourceDb = sourceRoot->database();
auto* targetDb = new Database();
- targetDb->metadata()->setRecycleBinEnabled(false);
+ auto* targetMetadata = targetDb->metadata();
+ targetMetadata->setRecycleBinEnabled(false);
auto key = QSharedPointer<CompositeKey>::create();
key->addKey(QSharedPointer<PasswordKey>::create(reference.password));
@@ -613,8 +611,8 @@ Database* ShareObserver::exportIntoContainer(const KeeShareSettings::Reference&
targetEntry->setGroup(targetRoot);
targetEntry->setUpdateTimeinfo(updateTimeinfo);
const auto iconUuid = targetEntry->iconUuid();
- if (!iconUuid.isNull()) {
- targetDb->metadata()->addCustomIcon(iconUuid, sourceEntry->icon());
+ if (!iconUuid.isNull() && !targetMetadata->containsCustomIcon(iconUuid)) {
+ targetMetadata->addCustomIcon(iconUuid, sourceEntry->icon());
}
}