unicorn icon indicating copy to clipboard operation
unicorn copied to clipboard

bindings: ruby: fix unexpected uc_query result pointer type

Open anthraxx opened this issue 1 year ago • 1 comments

uc_query expects a size_t *, while we are passing uc_arch *. This has been working for a while as gcc just warned about this, however with latest gcc this changed into an error:

unicorn.c:122:34: error: passing argument 3 of ‘uc_query’ from incompatible pointer type [-Wincompatible-pointer-types] 206 | uc_query(_uc, UC_QUERY_ARCH, &arch); unicorn.h:689:60: note: expected ‘size_t *’ {aka ‘long unsigned int *’} but argument is of type ‘uc_arch *’ 689 | uc_err uc_query(uc_engine *uc, uc_query_type type, size_t *result);

Fix this issue by querying the result into a size_t and later downcast the result into an uc_arch enum.

anthraxx avatar Jun 05 '24 17:06 anthraxx

Could you send this to the dev branch?

wtdcode avatar Jul 19 '24 03:07 wtdcode

Could you send this to the dev branch?

changed the base, is this ready to merge otherwise?

anthraxx avatar Apr 03 '25 18:04 anthraxx

Sure yes, just wait for CI.

wtdcode avatar Apr 03 '25 18:04 wtdcode