]> git.ipfire.org Git - thirdparty/asterisk.git/commit
app_voicemail.c: Completely resequence mailbox folders.
authorSean Bright <sean@seanbright.com>
Mon, 27 Nov 2023 15:20:02 +0000 (10:20 -0500)
committerSean Bright <sean@seanbright.com>
Tue, 28 Nov 2023 20:00:58 +0000 (20:00 +0000)
commit6556a92393b15bcaeddad98daa68ce2735fdeae1
treefbcbd7e9338699f458c39de2acfb311d859acd38
parent22e34193ee530144351d381ac00f1abc3f14f44f
app_voicemail.c: Completely resequence mailbox folders.

Resequencing is a process that occurs when we open a voicemail folder
and discover that there are gaps between messages (e.g. `msg0000.txt`
is missing but `msg0001.txt` exists). Resequencing involves shifting
the existing messages down so we end up with a sequential list of
messages.

Currently, this process stops after reaching a threshold based on the
message limit (`maxmsg`) configured on the current folder. However, if
`maxmsg` is lowered when a voicemail folder contains more than
`maxmsg + 10` messages, resequencing will not run completely leaving
the mailbox in an inconsistent state.

We now resequence up to the maximum number of messages permitted by
`app_voicemail` (currently hard-coded at 9999 messages).

Fixes #86
apps/app_voicemail.c