Skip to content

Commit 1a5333b

Browse files
committedMar 3, 2024
prevent 0 length allocation in js_worker_postMessage
1 parent e17cb9f commit 1a5333b

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed
 

‎quickjs-libc.c

+6-4
Original file line numberDiff line numberDiff line change
@@ -3527,10 +3527,12 @@ static JSValue js_worker_postMessage(JSContext *ctx, JSValueConst this_val,
35273527
memcpy(msg->data, data, data_len);
35283528
msg->data_len = data_len;
35293529

3530-
msg->sab_tab = malloc(sizeof(msg->sab_tab[0]) * sab_tab_len);
3531-
if (!msg->sab_tab)
3532-
goto fail;
3533-
memcpy(msg->sab_tab, sab_tab, sizeof(msg->sab_tab[0]) * sab_tab_len);
3530+
if (sab_tab_len > 0) {
3531+
msg->sab_tab = malloc(sizeof(msg->sab_tab[0]) * sab_tab_len);
3532+
if (!msg->sab_tab)
3533+
goto fail;
3534+
memcpy(msg->sab_tab, sab_tab, sizeof(msg->sab_tab[0]) * sab_tab_len);
3535+
}
35343536
msg->sab_tab_len = sab_tab_len;
35353537

35363538
js_free(ctx, data);

0 commit comments

Comments
 (0)