From 17ad048c8c9bbe0fe986fc7ad6a4a42dc09ab870 Mon Sep 17 00:00:00 2001 From: Andrew Zaborowski Date: Wed, 13 Jun 2018 19:05:39 +0200 Subject: [PATCH] device: On lost beacon always set roam_no_orig_ap Even if we're already roaming or preparing to roam, setting this flag may still affect some step of the roam sequence so set it anyway. --- src/device.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/device.c b/src/device.c index cf0fd8d4..2ff547e3 100644 --- a/src/device.c +++ b/src/device.c @@ -1488,7 +1488,8 @@ static void device_lost_beacon(struct device *device) { l_debug("%d", device->index); - if (device->preparing_roam || device->state == DEVICE_STATE_ROAMING) + if (device->state != DEVICE_STATE_ROAMING && + device->state != DEVICE_STATE_CONNECTED) return; /* @@ -1500,6 +1501,9 @@ static void device_lost_beacon(struct device *device) */ device->roam_no_orig_ap = true; + if (device->preparing_roam || device->state == DEVICE_STATE_ROAMING) + return; + device_roam_trigger_cb(NULL, device); }