From c2c162c240da9d3cb6a9b5644aff30cd6822b7fb Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Fri, 24 Aug 2012 12:29:06 -0400
Subject: [PATCH] Fix so subscribed non-existing/non-accessible shared folder can be unsubscribed

---
 CHANGELOG                          |    4 ++++
 program/steps/settings/folders.inc |    4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 72c0435..3962f9f 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,10 @@
 CHANGELOG Roundcube Webmail
 ===========================
 
+- Fix so subscribed non-existing/non-accessible shared folder can be unsubscribed
+
+RELEASE 0.7.3
+-------------
 - Fix quotation of message body when sending via SMTP
 - Added separate From and To columns apart from smart From/To column (#1486891)
 - Fix (workaround) delete operations with some versions of memcache (#1488592)
diff --git a/program/steps/settings/folders.inc b/program/steps/settings/folders.inc
index 3fc366d..72c1976 100644
--- a/program/steps/settings/folders.inc
+++ b/program/steps/settings/folders.inc
@@ -316,8 +316,8 @@
                 }
             }
         }
-        // check if the folder is shared, then disable subscription option on it
-        if (!$disabled && $folder['virtual'] && !empty($namespace)) {
+        // check if the folder is shared, then disable subscription option on it (if not subscribed already)
+        if (!$disabled && !$subscribed && $folder['virtual'] && !empty($namespace)) {
             $tmp_ns = array_merge((array)$namespace['other'], (array)$namespace['shared']);
             foreach ($tmp_ns as $item) {
                 if (strpos($folder['id'], $item[0]) === 0) {

--
Gitblit v1.9.1