fix invalid close() call
[project/ubus.git] / libubus-obj.c
index 9261b83246f26ea83167659970f71f504fa2df24..b3019652c52d73a1f9e1c6d24abb821161f2a198 100644 (file)
@@ -95,7 +95,8 @@ found:
        ret = obj->methods[method].handler(ctx, obj, &req,
                                           blob_data(attrbuf[UBUS_ATTR_METHOD]),
                                           attrbuf[UBUS_ATTR_DATA]);
-       close(req.req_fd);
+       if (req.req_fd >= 0)
+               close(req.req_fd);
        if (req.deferred || no_reply)
                return;