[Tickets #7772] Folders tree partially updated after a rename folder action

bugs at horde.org bugs at horde.org
Thu Dec 11 14:22:49 UTC 2008


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/7772
------------------------------------------------------------------------------
  Ticket             | 7772
  Created By         | emeric.jhelil at univ-lemans.fr
  Summary            | Folders tree partially updated after a rename folder
                     | action
  Queue              | DIMP
  Version            | 1.1
  Type               | Bug
  State              | Unconfirmed
  Priority           | 1. Low
  Milestone          |
  Patch              | 1
  Owners             |
+New Attachment     | dimp_renamefolder.patch
------------------------------------------------------------------------------


emeric.jhelil at univ-lemans.fr (2008-12-11 09:22) wrote:

Installation infos : horde-webmail-1.2 ; php-5.2.6 ; debian etch
I initially had this problem with the packaged imp-4.3, but it still  
remains with imp-4.3.2
Tested web browsers : Mozilla firefox 2.0.0.18, IE7, Safari 3.2 for  
windows (all on OS windows XP SP3)

By Dimp interface, after the renaming of a new folder, the folders  
tree is partially updated dynamically.

For instance, I try to rename the folder "foo" in "bar" :
- I get the message 'The folder "foo" was successfully renamed to "bar"'.
- The folder "bar" appears successfully in the folders tree.
But :
- The folder "foo" doesn't disappear from the folders tree.

Setting the javascript debugging and using dimp/js/src doesn't produce  
any alert.

Refreshing the page doesn't produce any change.
I need to disconnect-reconnect to see the correct folders tree without  
the folder "foo".


I have tried to understand  and it might be due to the use of the  
function _getList before the deletion of the folder "foo".
It sets the static variable $full_list with the folder "foo" and  
caches it even after its correct deletion.
So, this folder is finally maintained and does not make part of the  
deleted folders in the getFolderResponse result.

I have followed a part of the calls (I get the same in imp-4.3 and imp-4.3.2).
If I am not mistaking, a part of the calls is :
with Folder as horde/imp/lib/Folder.php, Search as  
horde/imp/lib/Search.php, Tree as horde/imp/lib/IMAP/Tree.php
- Previous calls to folderList set $full_list with the folder "foo"
Folder.rename calls
   Folder._onDelete which calls
     Search.sessionSetup(true) which calls
       Search.createVINBOXFolder which calls
         Tree.getPollList which calls
           Tree.folderList which calls
             Tree.showUnsubscribed which calls
               Tree._getList which returns by the 1st return  
instruction with $full_list already set

I have put aside the use of $full_list to make the Tree._getList  
function returns by the 3rd return instruction.

I have modified horde/imp/lib/IMAP/Tree.php (v 1.25.2.60 and v  
1.25.2.64), please see attached patch dimp_renamefolder.patch.
It can be applied on these two versions of the Tree.php.

Renaming a folder reacts dynamically and successfully :
- I get the message 'The folder "foo" was successfully renamed to "bar"'.
- The folder "foo" smoothly disappears from the folders tree.
- The folder "bar" appears in the folders tree.
It seems to work (maybe a border side effect waiting in the dark) on  
the three web browsers mentioed above.

Thanks for reading and help.

Emeric





More information about the bugs mailing list