I did some digging into this issue over the weekend, and discovered that rcube_imap::_list_headers is getting a correctly sorted list of message UIDs back from iil_C_Sort().  This means that the sorting within the IMAP server (mine is dovecot) is being done correctly, but RC is still displaying them in an incorrect order (the order of UIDs in the display table doesn't match the order of UIDs that come back from iil_C_Sort().  I didn't get a chance to trace it any further through rcube_imap::_fetch_headers and out through the display code.

 

On Mon, 24 Jul 2006 09:49:23 -0700, Mark Edwards wrote:

On Jul 24, 2006, at 9:17 AM, Jim Pingle wrote:

> There appears to be support for a similar option in the code for
> roundcube
> (in imap.inc), but I see no method for a user/admin to set it. In
> rcube_imap.inc it's explicitly set off, but at the start of
> imapinc it is
> set on. It tests to see if IMAP_USE_HEADER_DATE is false which it
> always
> will be as I can't find any other reference to the variable it's
> testing for
> anywhere in the code.
>
> As an experiment you could try commenting out line 57 in program/
> lib/imap.inc:
> if (!$IMAP_USE_HEADER_DATE) $IMAP_USE_INTERNAL_DATE = true;
>
> Alternately, change that so it's set to false instead of true.
>
> If it alters the sorting behavior for you, we may have found the
> culprit...

Unfortunately, that did nothing. :-(

Squirrelmail get the sort right on this particular mailbox, whether
server-side sorting is enabled or not. Roundcube puts a bunch of old
mails out of order at the top of the box.

--
Mark Edwards