mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-22 23:09:34 +01:00
offchannel: always call destroy right away on cancel
The main cancel code path was not calling destroy immediately which was not consistent with other code paths/APIs.
This commit is contained in:
parent
1a27cd1548
commit
4a8a43965f
@ -208,20 +208,10 @@ void offchannel_cancel(uint64_t wdev_id, uint32_t id)
|
|||||||
goto work_done;
|
goto work_done;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/* Lets the ROC callback know it needs to cancel the request */
|
||||||
* Call destroy now to maintain consistency with any other
|
|
||||||
* path leading to radio_work_done(). But set needs_cancel so
|
|
||||||
* the ROC command can be canceled
|
|
||||||
*/
|
|
||||||
if (info->destroy)
|
|
||||||
info->destroy(info->error, info->user_data);
|
|
||||||
|
|
||||||
info->destroy = NULL;
|
|
||||||
info->started = NULL;
|
|
||||||
info->user_data = NULL;
|
|
||||||
info->needs_cancel = true;
|
info->needs_cancel = true;
|
||||||
|
|
||||||
return;
|
goto destroy;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -239,6 +229,14 @@ void offchannel_cancel(uint64_t wdev_id, uint32_t id)
|
|||||||
*/
|
*/
|
||||||
offchannel_cancel_roc(info);
|
offchannel_cancel_roc(info);
|
||||||
|
|
||||||
|
destroy:
|
||||||
|
if (info->destroy)
|
||||||
|
info->destroy(info->error, info->user_data);
|
||||||
|
|
||||||
|
info->destroy = NULL;
|
||||||
|
info->started = NULL;
|
||||||
|
info->user_data = NULL;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
work_done:
|
work_done:
|
||||||
|
Loading…
Reference in New Issue
Block a user