[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1109995: marked as done (bookworm-pu: package nextcloud-desktop/3.7.3-1+deb12u2)



Your message dated Sat, 06 Sep 2025 12:14:50 +0100
with message-id <ee4c0876608d99eb3f8b333b556fbd92e7a652eb.camel@adam-barratt.org.uk>
and subject line Closing p-u requests for fixes included in 12.12
has caused the Debian Bug report #1109995,
regarding bookworm-pu: package nextcloud-desktop/3.7.3-1+deb12u2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1109995: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1109995
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: bookworm
X-Debbugs-Cc: nextcloud-desktop@packages.debian.org, Narcis Garcia <debianbugs@actiu.net>, hefee@debian.org
Control: affects -1 + src:nextcloud-desktop
User: release.debian.org@packages.debian.org
Usertags: pu


[ Reason ]
Fix #1108184:
"When selecting either the Share Options or Public link option from the
context menu, the share dialog opens but is grayed out with spinning
sync symbol."

[ Impact ]
Cannot use share dialog under some circumstances.

[ Tests ]
There inital reporter tested, that this version fixes the issue.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1108184#49

[ Risks ]

The risks are quite low, as all those patches come from upstream and
were released as 3.7.4 (with some more patches).
The patches itself only touching some lines without anything not
targenting this issue.
https://github.com/nextcloud/desktop/releases/tag/v3.7.4

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]
Backport only those 5 patches from:
https://github.com/nextcloud/desktop/pull/5446
https://github.com/nextcloud/desktop/pull/5489

the patches are already applied in 3.16.4 (Trixie).

Regards,

hefee
diff -Nru nextcloud-desktop-3.7.3/debian/changelog nextcloud-desktop-3.7.3/debian/changelog
--- nextcloud-desktop-3.7.3/debian/changelog	2023-12-12 13:06:40.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/changelog	2025-07-27 21:39:43.000000000 +0200
@@ -1,3 +1,11 @@
+nextcloud-desktop (3.7.3-1+deb12u2) bookworm; urgency=medium
+
+  * Backport patch to fix "Share options not working" (Closes: #1108184)
+    - Backport upstream merge-request #5446 (2 patches).
+    - Backport upstream merge-request #5489 (3 patches).
+
+ -- Sandro Knauß <hefee@debian.org>  Sun, 27 Jul 2025 21:39:43 +0200
+
 nextcloud-desktop (3.7.3-1+deb12u1) bookworm; urgency=medium
 
   * Backport patch to fix "fails to sync files with special chars like ':'"
diff -Nru nextcloud-desktop-3.7.3/debian/.gitignore nextcloud-desktop-3.7.3/debian/.gitignore
--- nextcloud-desktop-3.7.3/debian/.gitignore	2023-12-12 13:06:40.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/.gitignore	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-files
diff -Nru nextcloud-desktop-3.7.3/debian/patches/0007-Simplify-check-for-file-record-sharing-permission.patch nextcloud-desktop-3.7.3/debian/patches/0007-Simplify-check-for-file-record-sharing-permission.patch
--- nextcloud-desktop-3.7.3/debian/patches/0007-Simplify-check-for-file-record-sharing-permission.patch	1970-01-01 01:00:00.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/0007-Simplify-check-for-file-record-sharing-permission.patch	2025-07-27 21:39:02.000000000 +0200
@@ -0,0 +1,32 @@
+From: Claudio Cambra <claudio.cambra@nextcloud.com>
+Date: Wed, 15 Feb 2023 18:47:17 +0100
+Subject: Simplify check for file record sharing permission
+
+Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
+---
+ src/gui/filedetails/sharemodel.cpp | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp
+index f656488..2819a21 100644
+--- a/src/gui/filedetails/sharemodel.cpp
++++ b/src/gui/filedetails/sharemodel.cpp
+@@ -240,12 +240,13 @@ void ShareModel::updateData()
+     SyncJournalFileRecord fileRecord;
+     auto resharingAllowed = true; // lets assume the good
+ 
+-    if(_folder->journalDb()->getFileRecord(relPath, &fileRecord) && fileRecord.isValid()) {
+-        if (!fileRecord._remotePerm.isNull() &&
+-            !fileRecord._remotePerm.hasPermission(RemotePermissions::CanReshare)) {
++    if(_folder->journalDb()->getFileRecord(relPath, &fileRecord) &&
++       fileRecord.isValid() &&
++       !fileRecord._remotePerm.isNull() &&
++       !fileRecord._remotePerm.hasPermission(RemotePermissions::CanReshare)) {
+ 
+-            resharingAllowed = false;
+-        }
++        qCInfo(lcShareModel) << "File record says resharing not allowed";
++        resharingAllowed = false;
+     }
+ 
+     _maxSharingPermissions = resharingAllowed ? SharePermissions(_accountState->account()->capabilities().shareDefaultPermissions()) : SharePermissions({});
diff -Nru nextcloud-desktop-3.7.3/debian/patches/0008-Try-to-initialise-share-manager-again-if-we-receive-.patch nextcloud-desktop-3.7.3/debian/patches/0008-Try-to-initialise-share-manager-again-if-we-receive-.patch
--- nextcloud-desktop-3.7.3/debian/patches/0008-Try-to-initialise-share-manager-again-if-we-receive-.patch	1970-01-01 01:00:00.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/0008-Try-to-initialise-share-manager-again-if-we-receive-.patch	2025-07-27 21:39:02.000000000 +0200
@@ -0,0 +1,32 @@
+From: Claudio Cambra <claudio.cambra@nextcloud.com>
+Date: Wed, 15 Feb 2023 18:49:47 +0100
+Subject: Try to initialise share manager again if we receive updated sharing
+ permissions that would have previously prevented sharing
+
+Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
+---
+ src/gui/filedetails/sharemodel.cpp | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp
+index 2819a21..80a0484 100644
+--- a/src/gui/filedetails/sharemodel.cpp
++++ b/src/gui/filedetails/sharemodel.cpp
+@@ -357,9 +357,17 @@ void ShareModel::slotPropfindReceived(const QVariantMap &result)
+ 
+     const QVariant receivedPermissions = result["share-permissions"];
+     if (!receivedPermissions.toString().isEmpty()) {
++        const auto oldCanShare = canShare();
++
+         _maxSharingPermissions = static_cast<SharePermissions>(receivedPermissions.toInt());
+         Q_EMIT sharePermissionsChanged();
+         qCInfo(lcShareModel) << "Received sharing permissions for" << _sharePath << _maxSharingPermissions;
++
++        if (!oldCanShare && canShare()) {
++            qCInfo(lcShareModel) << "Received updated sharing data that says we have permission to share now."
++                                 << "Trying to init share manager again.";
++            initShareManager();
++        }
+     }
+ 
+     const auto privateLinkUrl = result["privatelink"].toString();
diff -Nru nextcloud-desktop-3.7.3/debian/patches/0009-Don-t-block-loading-if-public-link-shares-are-disabl.patch nextcloud-desktop-3.7.3/debian/patches/0009-Don-t-block-loading-if-public-link-shares-are-disabl.patch
--- nextcloud-desktop-3.7.3/debian/patches/0009-Don-t-block-loading-if-public-link-shares-are-disabl.patch	1970-01-01 01:00:00.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/0009-Don-t-block-loading-if-public-link-shares-are-disabl.patch	2025-07-27 21:39:02.000000000 +0200
@@ -0,0 +1,25 @@
+From: Claudio Cambra <claudio.cambra@nextcloud.com>
+Date: Fri, 24 Feb 2023 13:40:17 +0100
+Subject: Don't block loading if public link shares are disabled
+
+Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
+---
+ src/gui/filedetails/sharemodel.cpp | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp
+index 80a0484..df79442 100644
+--- a/src/gui/filedetails/sharemodel.cpp
++++ b/src/gui/filedetails/sharemodel.cpp
+@@ -298,10 +298,7 @@ void ShareModel::initShareManager()
+     }
+ 
+     bool sharingPossible = true;
+-    if (!publicLinkSharesEnabled()) {
+-        qCWarning(lcSharing) << "Link shares have been disabled";
+-        sharingPossible = false;
+-    } else if (!canShare()) {
++    if (!canShare()) {
+         qCWarning(lcSharing) << "The file cannot be shared because it does not have sharing permission.";
+         sharingPossible = false;
+     }
diff -Nru nextcloud-desktop-3.7.3/debian/patches/0010-Don-t-display-the-placeholder-link-share-of-public-l.patch nextcloud-desktop-3.7.3/debian/patches/0010-Don-t-display-the-placeholder-link-share-of-public-l.patch
--- nextcloud-desktop-3.7.3/debian/patches/0010-Don-t-display-the-placeholder-link-share-of-public-l.patch	1970-01-01 01:00:00.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/0010-Don-t-display-the-placeholder-link-share-of-public-l.patch	2025-07-27 21:39:02.000000000 +0200
@@ -0,0 +1,31 @@
+From: Claudio Cambra <claudio.cambra@nextcloud.com>
+Date: Fri, 24 Feb 2023 13:40:58 +0100
+Subject: Don't display the placeholder link share of public link shares are
+ not available
+
+Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
+---
+ src/gui/filedetails/sharemodel.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp
+index df79442..90926ba 100644
+--- a/src/gui/filedetails/sharemodel.cpp
++++ b/src/gui/filedetails/sharemodel.cpp
+@@ -342,7 +342,7 @@ void ShareModel::handlePlaceholderLinkShare()
+ 
+     if (linkSharePresent && placeholderLinkSharePresent) {
+         slotRemoveShareWithId(placeholderLinkShareId);
+-    } else if (!linkSharePresent && !placeholderLinkSharePresent) {
++    } else if (!linkSharePresent && !placeholderLinkSharePresent && publicLinkSharesEnabled()) {
+         slotAddShare(_placeholderLinkShare);
+     }
+ }
+@@ -402,6 +402,7 @@ void ShareModel::slotSharesFetched(const QList<SharePtr> &shares)
+     }
+ 
+     handlePlaceholderLinkShare();
++    Q_EMIT sharesChanged();
+ }
+ 
+ void ShareModel::setupInternalLinkShare()
diff -Nru nextcloud-desktop-3.7.3/debian/patches/0011-Move-sharesChanged-signal-emission-to-handlePlacehol.patch nextcloud-desktop-3.7.3/debian/patches/0011-Move-sharesChanged-signal-emission-to-handlePlacehol.patch
--- nextcloud-desktop-3.7.3/debian/patches/0011-Move-sharesChanged-signal-emission-to-handlePlacehol.patch	1970-01-01 01:00:00.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/0011-Move-sharesChanged-signal-emission-to-handlePlacehol.patch	2025-07-27 21:39:02.000000000 +0200
@@ -0,0 +1,48 @@
+From: Claudio Cambra <claudio.cambra@nextcloud.com>
+Date: Tue, 28 Feb 2023 23:18:05 +0100
+Subject: Move sharesChanged signal emission to handlePlaceholderLinkShare
+ rather than repeating each time this method is called
+
+Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
+---
+ src/gui/filedetails/sharemodel.cpp | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp
+index 90926ba..557405f 100644
+--- a/src/gui/filedetails/sharemodel.cpp
++++ b/src/gui/filedetails/sharemodel.cpp
+@@ -345,6 +345,8 @@ void ShareModel::handlePlaceholderLinkShare()
+     } else if (!linkSharePresent && !placeholderLinkSharePresent && publicLinkSharesEnabled()) {
+         slotAddShare(_placeholderLinkShare);
+     }
++
++    Q_EMIT sharesChanged();
+ }
+ 
+ void ShareModel::slotPropfindReceived(const QVariantMap &result)
+@@ -402,7 +404,6 @@ void ShareModel::slotSharesFetched(const QList<SharePtr> &shares)
+     }
+ 
+     handlePlaceholderLinkShare();
+-    Q_EMIT sharesChanged();
+ }
+ 
+ void ShareModel::setupInternalLinkShare()
+@@ -479,7 +480,6 @@ void ShareModel::slotAddShare(const SharePtr &share)
+     }
+ 
+     handlePlaceholderLinkShare();
+-    Q_EMIT sharesChanged();
+ }
+ 
+ void ShareModel::slotRemoveShareWithId(const QString &shareId)
+@@ -506,8 +506,6 @@ void ShareModel::slotRemoveShareWithId(const QString &shareId)
+     endRemoveRows();
+ 
+     handlePlaceholderLinkShare();
+-
+-    Q_EMIT sharesChanged();
+ }
+ 
+ void ShareModel::slotServerError(const int code, const QString &message)
diff -Nru nextcloud-desktop-3.7.3/debian/patches/series nextcloud-desktop-3.7.3/debian/patches/series
--- nextcloud-desktop-3.7.3/debian/patches/series	2023-12-12 13:06:40.000000000 +0100
+++ nextcloud-desktop-3.7.3/debian/patches/series	2025-07-27 21:39:02.000000000 +0200
@@ -4,3 +4,8 @@
 0004-Don-t-use-GuiPrivate.patch
 0005-fixed-detection-of-server-version-in-cmd-client-simi.patch
 0006-Fix-display-of-2FA-notification.patch
+0007-Simplify-check-for-file-record-sharing-permission.patch
+0008-Try-to-initialise-share-manager-again-if-we-receive-.patch
+0009-Don-t-block-loading-if-public-link-shares-are-disabl.patch
+0010-Don-t-display-the-placeholder-link-share-of-public-l.patch
+0011-Move-sharesChanged-signal-emission-to-handlePlacehol.patch

--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 12.12

Hi,

Each of the updates referenced by these requests was included in
today's 12.12 point release for bookworm.

Regards,

Adam

--- End Message ---

Reply to: