JwmaController has four cases in which it displays the next
or previous message when a message has been deleted
or moved. It checks the next message number against -1
to determine if it's at the beginning or end of the list of
messages.
For example, doDeleteActualMessage invokes
JwmaFolderImpl.deleteActualMessage, which uses
getNextMessageNumber to get the next message, but then
subtracts 1.
But, getNextMessageNumber invokes
JwmaMessage.getMessageNumber (implemented as
JwmaMessageInfoListImpl.getMessageNumber), which
itself can return -1.
The result is that the value of the next message number in
JwmaController can be -2.
I think the test in JwmaController can simply be >= 1
instead, but you may want to implement it differently.
==Leonard
Logged In: YES
user_id=36782
Leonard,
Thanks for the report and fix suggestions. I have fixed the problem
accordingly (will check the backend later), and will check in changes
with a bunch of other updates.
Dieter