[OpenWrt-Devel] [PATCH ubus 05/16] libubus: fix incompatible pointer types assigment

Petr Štetiar ynezz at true.cz
Thu Dec 19 17:11:14 EST 2019


Fixes following error reported by clang-9 analyzer:

 libubus.c:286:19: error: incompatible pointer types assigning to 'struct blob_attr *' from 'char *' [-Werror,-Wincompatible-pointer-types]
         ctx->msgbuf.data = (char *) calloc(UBUS_MSG_CHUNK_SIZE, sizeof(char));

Result of 'calloc' is converted to a pointer of type 'struct blob_attr',
which is incompatible with sizeof operand type 'char'.

Signed-off-by: Petr Štetiar <ynezz at true.cz>
---
 libubus.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libubus.c b/libubus.c
index 260e40f2f44b..846ae83bcc12 100644
--- a/libubus.c
+++ b/libubus.c
@@ -283,7 +283,7 @@ int ubus_connect_ctx(struct ubus_context *ctx, const char *path)
 	ctx->connection_lost = ubus_default_connection_lost;
 	ctx->pending_timer.cb = ubus_process_pending_msg;
 
-	ctx->msgbuf.data = calloc(UBUS_MSG_CHUNK_SIZE, sizeof(char));
+	ctx->msgbuf.data = calloc(1, UBUS_MSG_CHUNK_SIZE);
 	if (!ctx->msgbuf.data)
 		return -1;
 	ctx->msgbuf_data_len = UBUS_MSG_CHUNK_SIZE;

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list