summaryrefslogtreecommitdiff
path: root/cesar/bsu/src/bsu.c
diff options
context:
space:
mode:
Diffstat (limited to 'cesar/bsu/src/bsu.c')
-rw-r--r--cesar/bsu/src/bsu.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/cesar/bsu/src/bsu.c b/cesar/bsu/src/bsu.c
index 195fceae50..0b8403d07c 100644
--- a/cesar/bsu/src/bsu.c
+++ b/cesar/bsu/src/bsu.c
@@ -157,9 +157,12 @@ bsu_schedules_merge_process_init (bsu_t *ctx, bsu_beacon_schedules_t *sched,
/* Persistent schedules position index. */
for (i = 0; i < sched->ps.nb; i++)
{
- if (sched->ps.ps[i].pscd <= beacon_period_index
- && (u32) (sched->ps.ps[i].pscd + sched->ps.ps[i].cscd)
- >= beacon_period_index)
+ if ((sched->ps.ps[i].pscd <= beacon_period_index
+ && (u32) (sched->ps.ps[i].pscd + sched->ps.ps[i].cscd)
+ >= beacon_period_index)
+ || (sched->ps.ps[i].pscd == 0
+ && sched->ps.ps[i].cscd ==
+ BSU_BEACON_PERSISTENT_SCHEDULES_PERMANENT_COUNTDOWN))
{
proc->ps = &sched->ps.ps[i];
proc->ps_alloc_index = 0;