77d4a02 and
55da01f only updated the address flag when a job was created,
which obviously had the same limitation as the old code.
Fixes #374.
time_monotonic(&now);
this->roam_lock->lock(this->roam_lock);
+ this->roam_address |= address;
if (!timercmp(&now, &this->next_roam, >))
{
this->roam_lock->unlock(this->roam_lock);
}
timeval_add_ms(&now, ROAM_DELAY);
this->next_roam = now;
- this->roam_address |= address;
this->roam_lock->unlock(this->roam_lock);
job = (job_t*)callback_job_create((callback_job_cb_t)roam_event,
time_monotonic(&now);
this->roam_lock->lock(this->roam_lock);
+ this->roam_address |= address;
if (!timercmp(&now, &this->next_roam, >))
{
this->roam_lock->unlock(this->roam_lock);
}
timeval_add_ms(&now, ROAM_DELAY);
this->next_roam = now;
- this->roam_address |= address;
this->roam_lock->unlock(this->roam_lock);
job = (job_t*)callback_job_create((callback_job_cb_t)roam_event,