commit 86358ef734a52b52c72ac4d2e196ce5afbeb3900
parent 2e7ee9c78e55882ea7133586ae9b2d3211bdf90a
Author: Florian Dold <dold@taler.net>
Date: Sun, 9 Aug 2026 21:30:31 +0200
quickjs: avoid incompatible allocator callbacks
Diffstat:
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/quickjs/quickjs-libc.c b/quickjs/quickjs-libc.c
@@ -227,9 +227,14 @@ typedef struct JSThreadState {
static uint64_t os_pending_signals;
static int (*os_poll_func)(JSContext *ctx);
+static void *js_std_realloc_rt(void *opaque, void *ptr, size_t size)
+{
+ return js_realloc_rt(opaque, ptr, size);
+}
+
static void js_std_dbuf_init(JSContext *ctx, DynBuf *s)
{
- dbuf_init2(s, JS_GetRuntime(ctx), (DynBufReallocFunc *)js_realloc_rt);
+ dbuf_init2(s, JS_GetRuntime(ctx), js_std_realloc_rt);
}
static BOOL my_isdigit(int c)
diff --git a/quickjs/quickjs.c b/quickjs/quickjs.c
@@ -1936,9 +1936,14 @@ static inline int js_resize_array(JSContext *ctx, void **parray, int elem_size,
return 0;
}
+static void *js_realloc_rt_opaque(void *opaque, void *ptr, size_t size)
+{
+ return js_realloc_rt(opaque, ptr, size);
+}
+
static inline void js_dbuf_init(JSContext *ctx, DynBuf *s)
{
- dbuf_init2(s, ctx->rt, (DynBufReallocFunc *)js_realloc_rt);
+ dbuf_init2(s, ctx->rt, js_realloc_rt_opaque);
}
static void *js_realloc_bytecode_rt(void *opaque, void *ptr, size_t size)
@@ -46586,7 +46591,7 @@ static int js_string_normalize1(JSContext *ctx, uint32_t **pout_buf,
if (buf_len < 0)
return -1;
out_len = unicode_normalize(&out_buf, buf, buf_len, n_type,
- ctx->rt, (DynBufReallocFunc *)js_realloc_rt);
+ ctx->rt, js_realloc_rt_opaque);
js_free(ctx, buf);
if (out_len < 0)
return -1;