[quickjs] Fix function type mismatches

UBSan is finding function type mismatches for js_realloc_rt where the
first argument should be an opaque void* rather than a JSRuntime*. This
fixes some instances of function type mismatches to takea void*.

Bug: 127108
Change-Id: I0ca77dfc8021e9fda592b7950dc80e88f2d985ac
diff --git a/quickjs.c b/quickjs.c
index bb97be7..9ad1a90 100644
--- a/quickjs.c
+++ b/quickjs.c
@@ -1285,28 +1285,33 @@
     return 0;
 }
 
-void *js_malloc_rt(JSRuntime *rt, size_t size)
+void *js_malloc_rt(void *opaque, size_t size)
 {
+    JSRuntime *rt = opaque;
     return rt->mf.js_malloc(&rt->malloc_state, size);
 }
 
-void js_free_rt(JSRuntime *rt, void *ptr)
+void js_free_rt(void *opaque, void *ptr)
 {
+    JSRuntime *rt = opaque;
     rt->mf.js_free(&rt->malloc_state, ptr);
 }
 
-void *js_realloc_rt(JSRuntime *rt, void *ptr, size_t size)
+void *js_realloc_rt(void *opaque, void *ptr, size_t size)
 {
+    JSRuntime *rt = opaque;
     return rt->mf.js_realloc(&rt->malloc_state, ptr, size);
 }
 
-size_t js_malloc_usable_size_rt(JSRuntime *rt, const void *ptr)
+size_t js_malloc_usable_size_rt(void *opaque, const void *ptr)
 {
+    JSRuntime *rt = opaque;
     return rt->mf.js_malloc_usable_size(ptr);
 }
 
-void *js_mallocz_rt(JSRuntime *rt, size_t size)
+void *js_mallocz_rt(void *opaque, size_t size)
 {
+    JSRuntime *rt = opaque;
     void *ptr;
     ptr = js_malloc_rt(rt, size);
     if (!ptr)
diff --git a/quickjs.h b/quickjs.h
index 0fe18be..622061e 100644
--- a/quickjs.h
+++ b/quickjs.h
@@ -381,11 +381,11 @@
 JSValue js_string_codePointRange(JSContext *ctx, JSValueConst this_val,
                                  int argc, JSValueConst *argv);
 
-void *js_malloc_rt(JSRuntime *rt, size_t size);
-void js_free_rt(JSRuntime *rt, void *ptr);
-void *js_realloc_rt(JSRuntime *rt, void *ptr, size_t size);
-size_t js_malloc_usable_size_rt(JSRuntime *rt, const void *ptr);
-void *js_mallocz_rt(JSRuntime *rt, size_t size);
+void *js_malloc_rt(void *opaque, size_t size);
+void js_free_rt(void *opaque, void *ptr);
+void *js_realloc_rt(void *opaque, void *ptr, size_t size);
+size_t js_malloc_usable_size_rt(void *opaque, const void *ptr);
+void *js_mallocz_rt(void *opaque, size_t size);
 
 void *js_malloc(JSContext *ctx, size_t size);
 void js_free(JSContext *ctx, void *ptr);