From 58ebd886a948eec729e4b624ef17f2da4e560185 Mon Sep 17 00:00:00 2001 From: Matthieu Gallien Date: Wed, 11 Mar 2026 16:43:13 +0100 Subject: [PATCH 1/2] chore: modernize code style Signed-off-by: Matthieu Gallien --- .../updatee2eefolderusersmetadatajob.cpp | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/libsync/updatee2eefolderusersmetadatajob.cpp b/src/libsync/updatee2eefolderusersmetadatajob.cpp index e97d89a4208ef..c5f636e5c8d25 100644 --- a/src/libsync/updatee2eefolderusersmetadatajob.cpp +++ b/src/libsync/updatee2eefolderusersmetadatajob.cpp @@ -16,21 +16,21 @@ namespace OCC Q_LOGGING_CATEGORY(lcUpdateE2eeFolderUsersMetadataJob, "nextcloud.gui.updatee2eefolderusersmetadatajob", QtInfoMsg) UpdateE2eeFolderUsersMetadataJob::UpdateE2eeFolderUsersMetadataJob(const AccountPtr &account, - SyncJournalDb *journalDb, - const QString &syncFolderRemotePath, - const Operation operation, - const QString &fullRemotePath, - const QString &folderUserId, - const QSslCertificate &certificate, - QObject *parent) - : QObject(parent) - , _account(account) - , _journalDb(journalDb) - , _syncFolderRemotePath(Utility::noLeadingSlashPath(Utility::noTrailingSlashPath(syncFolderRemotePath))) - , _operation(operation) - , _fullRemotePath(Utility::noLeadingSlashPath(fullRemotePath)) - , _folderUserId(folderUserId) - , _folderUserCertificate(certificate) + SyncJournalDb *journalDb, + const QString &syncFolderRemotePath, + const Operation operation, + const QString &fullRemotePath, + const QString &folderUserId, + const QSslCertificate &certificate, + QObject *parent) + : QObject{parent} + , _account{account} + , _journalDb{journalDb} + , _syncFolderRemotePath{Utility::noLeadingSlashPath(Utility::noTrailingSlashPath(syncFolderRemotePath))} + , _operation{operation} + , _fullRemotePath{Utility::noLeadingSlashPath(fullRemotePath)} + , _folderUserId{folderUserId} + , _folderUserCertificate{certificate} { Q_ASSERT(_syncFolderRemotePath == QStringLiteral("/") || _fullRemotePath.startsWith(_syncFolderRemotePath)); SyncJournalFileRecord rec; From e02177c80ff263843ee45c67489703a3b82077ee Mon Sep 17 00:00:00 2001 From: Matthieu Gallien Date: Wed, 11 Mar 2026 16:46:27 +0100 Subject: [PATCH 2/2] fix(e2ee): use display name instead of user ID for UI messages Signed-off-by: Matthieu Gallien --- src/gui/sharemanager.cpp | 1 + src/libsync/updatee2eefolderusersmetadatajob.cpp | 6 ++++-- src/libsync/updatee2eefolderusersmetadatajob.h | 11 ++++++++++- src/libsync/updatemigratede2eemetadatajob.cpp | 1 + 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/gui/sharemanager.cpp b/src/gui/sharemanager.cpp index 8f7314d96e828..e4287d8f175d1 100644 --- a/src/gui/sharemanager.cpp +++ b/src/gui/sharemanager.cpp @@ -521,6 +521,7 @@ void ShareManager::createE2EeShareJob(const QString &fullRemotePath, UpdateE2eeFolderUsersMetadataJob::Add, fullRemotePath, sharee->shareWith(), + sharee->displayName(), QSslCertificate{}, this); diff --git a/src/libsync/updatee2eefolderusersmetadatajob.cpp b/src/libsync/updatee2eefolderusersmetadatajob.cpp index c5f636e5c8d25..94a88ec400760 100644 --- a/src/libsync/updatee2eefolderusersmetadatajob.cpp +++ b/src/libsync/updatee2eefolderusersmetadatajob.cpp @@ -21,6 +21,7 @@ UpdateE2eeFolderUsersMetadataJob::UpdateE2eeFolderUsersMetadataJob(const Account const Operation operation, const QString &fullRemotePath, const QString &folderUserId, + const QString &folderUserDisplayName, const QSslCertificate &certificate, QObject *parent) : QObject{parent} @@ -30,6 +31,7 @@ UpdateE2eeFolderUsersMetadataJob::UpdateE2eeFolderUsersMetadataJob(const Account , _operation{operation} , _fullRemotePath{Utility::noLeadingSlashPath(fullRemotePath)} , _folderUserId{folderUserId} + , _folderUserDisplayName{folderUserDisplayName} , _folderUserCertificate{certificate} { Q_ASSERT(_syncFolderRemotePath == QStringLiteral("/") || _fullRemotePath.startsWith(_syncFolderRemotePath)); @@ -78,7 +80,7 @@ void UpdateE2eeFolderUsersMetadataJob::start(const bool keepLock) void UpdateE2eeFolderUsersMetadataJob::slotStartE2eeMetadataJobs() { if (_operation == Operation::Add && _folderUserCertificate.isNull()) { - emit finished(404, tr("Could not fetch public key for user %1").arg(_folderUserId)); + emit finished(404, tr("Could not fetch public key for user %1").arg(_folderUserDisplayName)); return; } @@ -106,7 +108,7 @@ void UpdateE2eeFolderUsersMetadataJob::slotFetchMetadataJobFinished(int statusCo } if (!_encryptedFolderMetadataHandler->folderMetadata() || !_encryptedFolderMetadataHandler->folderMetadata()->isValid()) { - emit finished(403, tr("Could not add or remove user %1 to access folder %2").arg(_folderUserId).arg(_fullRemotePath)); + emit finished(403, tr("Could not add or remove user %1 to access folder %2").arg(_folderUserDisplayName).arg(_fullRemotePath)); return; } startUpdate(); diff --git a/src/libsync/updatee2eefolderusersmetadatajob.h b/src/libsync/updatee2eefolderusersmetadatajob.h index cc606415600d2..a0bc73d56521c 100644 --- a/src/libsync/updatee2eefolderusersmetadatajob.h +++ b/src/libsync/updatee2eefolderusersmetadatajob.h @@ -33,7 +33,15 @@ class OWNCLOUDSYNC_EXPORT UpdateE2eeFolderUsersMetadataJob : public QObject QString password; }; - explicit UpdateE2eeFolderUsersMetadataJob(const AccountPtr &account, SyncJournalDb *journalDb,const QString &syncFolderRemotePath, const Operation operation, const QString &fullRemotePath = {}, const QString &folderUserId = {}, const QSslCertificate &certificate = QSslCertificate{}, QObject *parent = nullptr); + explicit UpdateE2eeFolderUsersMetadataJob(const AccountPtr &account, + SyncJournalDb *journalDb, + const QString &syncFolderRemotePath, + const Operation operation, + const QString &fullRemotePath = {}, + const QString &folderUserId = {}, + const QString &folderUserDisplayName = {}, + const QSslCertificate &certificate = QSslCertificate{}, + QObject *parent = nullptr); ~UpdateE2eeFolderUsersMetadataJob() override = default; public: @@ -84,6 +92,7 @@ private: signals: Operation _operation = Invalid; QString _fullRemotePath; QString _folderUserId; + QString _folderUserDisplayName; QSslCertificate _folderUserCertificate; QByteArray _folderToken; // needed when re-encrypting nested folders' metadata after top-level folder's metadata has changed diff --git a/src/libsync/updatemigratede2eemetadatajob.cpp b/src/libsync/updatemigratede2eemetadatajob.cpp index 0d6dab88b3c23..3d599ad75509b 100644 --- a/src/libsync/updatemigratede2eemetadatajob.cpp +++ b/src/libsync/updatemigratede2eemetadatajob.cpp @@ -38,6 +38,7 @@ void UpdateMigratedE2eeMetadataJob::start() UpdateE2eeFolderUsersMetadataJob::Add, _fullRemotePath, propagator()->account()->davUser(), + propagator()->account()->displayName(), propagator()->account()->e2e()->getCertificate()); updateMedatadaAndSubfoldersJob->setParent(this); updateMedatadaAndSubfoldersJob->setSubJobSyncItems(_subJobItems);