Fix another error in the notification code
In addition to checking whether a recurrent item predates the current next appointment, we need to check that the actual occurrence of the item predates the current appointment as well. Fixes GitHub issue #26. Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
This commit is contained in:
parent
2084f353e3
commit
5aa7a0962a
@ -943,9 +943,14 @@ struct notify_app *recur_apoint_check_next(struct notify_app *app,
|
|||||||
recur_apoint_starts_before, i) {
|
recur_apoint_starts_before, i) {
|
||||||
struct recur_apoint *rapt = LLIST_TS_GET_DATA(i);
|
struct recur_apoint *rapt = LLIST_TS_GET_DATA(i);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Check whether the recurrent appointment contains an
|
||||||
|
* occurrence which is the next item to be notified.
|
||||||
|
*/
|
||||||
if (recur_apoint_find_occurrence
|
if (recur_apoint_find_occurrence
|
||||||
(rapt, day, &real_recur_start_time)
|
(rapt, day, &real_recur_start_time)
|
||||||
&& real_recur_start_time > start) {
|
&& real_recur_start_time > start
|
||||||
|
&& real_recur_start_time < app->time) {
|
||||||
app->time = real_recur_start_time;
|
app->time = real_recur_start_time;
|
||||||
app->txt = mem_strdup(rapt->mesg);
|
app->txt = mem_strdup(rapt->mesg);
|
||||||
app->state = rapt->state;
|
app->state = rapt->state;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user