I ran into what looks like a bug in how the MIX (unix) driver handles
system flag changes during a mix_ping(). It doesn't handle flags that
are turned off by another process.
Here's what happens when I open two IMAP connections to the same
mailbox:
A1 FETCH 1 FLAGS
* 1 FETCH (FLAGS ())
A1 OK FETCH completed
B1 FETCH 1 FLAGS
* 1 FETCH (FLAGS ())
B1 OK FETCH completed
A2 STORE 1 +FLAGS \Seen
* 1 FETCH (FLAGS (\Seen))
A2 OK STORE completed
B2 NOOP
* 1 FETCH (FLAGS (\Seen))
B2 OK NOOP completed
A3 STORE 1 -FLAGS \Seen
* 1 FETCH (FLAGS ())
A3 OK STORE completed
B3 NOOP
* 1 FETCH (FLAGS (\Seen))
B3 OK NOOP completed
B4 FETCH 1 FLAGS
* 1 FETCH (FLAGS (\Seen))
B4 OK FETCH completed
Connection "B" correctly reports when the flag is set, but not when it
is cleared.
Andrew Skalski
_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw