From fa39f02dfa7cf4703cc0ffc2f0dc5287ed263db9 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Sun, 6 Sep 2009 02:27:15 +0200 Subject: [PATCH] Set powered_pending to TRUE during setup to fix race with RFKILL --- src/device.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/device.c b/src/device.c index 2745893..bc78513 100644 --- a/src/device.c +++ b/src/device.c @@ -300,8 +300,6 @@ static int set_powered(struct connman_device *device, connman_bool_t powered) if (device->powered_pending == powered) return -EALREADY; - device->powered_pending = powered; - if (!driver) return -EINVAL; @@ -309,12 +307,16 @@ static int set_powered(struct connman_device *device, connman_bool_t powered) if (powered == TRUE) { if (driver->enable) { + device->powered_pending = powered; + err = driver->enable(device); if (err == 0) __connman_notifier_enable(type); } else err = -EINVAL; } else { + device->powered_pending = powered; + clear_scan_trigger(device); g_hash_table_remove_all(device->networks); -- 2.7.4