diff options
author | Jo-Philipp Wich <jo@mein.io> | 2019-11-03 21:53:05 +0300 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2019-11-03 21:57:14 +0300 |
commit | af88f9a006b23f3ec0e559b1192570930ec648b5 (patch) | |
tree | cbbf3ef37028a3432eb394ffc08c068f4eb80b46 /libs/rpcd-mod-luci/src/luci.c | |
parent | eb808d0e9f9fb43ee9312bfee22d8fcaa3a69b06 (diff) |
rpcd-mod-luci: properly deal with failing ubus requests
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'libs/rpcd-mod-luci/src/luci.c')
-rw-r--r-- | libs/rpcd-mod-luci/src/luci.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/rpcd-mod-luci/src/luci.c b/libs/rpcd-mod-luci/src/luci.c index 91f6798d79..12a22c8891 100644 --- a/libs/rpcd-mod-luci/src/luci.c +++ b/libs/rpcd-mod-luci/src/luci.c @@ -83,6 +83,8 @@ invoke_data_cb(struct ubus_request *req, int type, struct blob_attr *msg) if (ictx->cb != NULL) ictx->cb(req, type, msg); + + ictx->cb = NULL; } static void @@ -91,6 +93,9 @@ invoke_done_cb(struct ubus_request *req, int ret) struct invoke_context *ictx = container_of(req, struct invoke_context, request); + if (ictx->cb != NULL) + ictx->cb(req, -1, NULL); + uloop_timeout_cancel(&ictx->timeout); free(ictx); } |