<<< Date Index >>>     <<< Thread Index >>>

Re: IMAP status flags lost when refiling



On Fri, Apr 01, 2005 at 09:33:51PM -0500, Daniel Jacobowitz wrote:
> On Wed, Mar 30, 2005 at 03:28:20PM +0100, Dave Ewart wrote:
> > On Tuesday, 29.03.2005 at 15:21 -0500, Kyle Wheeler wrote:
> > 
> > > I've looked through the archives, and I'm not sure if this bug has been 
> > > brought up since the bug database was lost... Debian 163616 
> > > (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=163616) - basically, 
> > > when messages are moved from one IMAP folder to another IMAP folder (on 
> > > the same server), the flags that have not been saved to the server are 
> > > lost.
> > 
> > Oh, yes please, a fix to that would be very useful.  Particularly,
> > having messages which have been read in one folder appear as 'New' when
> > saved to another folder is very annoying.
> 
> Amen.  I've been running into this for a while now.

I guess that the problem (not a bug at all) is caused by
server-side copying. Maybe you can safely remove these lines
from commands.c (not imap/command.c):

#ifdef USE_IMAP
  if (Context->magic == M_IMAP && 
      !(decode || decrypt) && mx_is_imap (buf))
  {
    switch (imap_copy_messages (Context, h, buf, delete))
    {
      /* success */
      case 0: mutt_clear_error (); return 0;
      /* non-fatal error: fall through to fetch/append */
      case 1: break;
      /* fatal error, abort */
      case -1: return -1;
    }
  }
#endif

I have no idea about its performance tradeoff, though.

-- 
tamo