emnapi 0.36.3 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -212,9 +212,13 @@ function _emnapi_create_memory_view(env, typedarray_type, external_data, byte_le
212
212
  case -1 /* emnapi_memory_view_type.emnapi_data_view */:
213
213
  viewDescriptor_1 = { Ctor: DataView, address: external_data, length: byte_length, ownership: 1 /* Ownership.kUserland */, runtimeAllocated: 0 };
214
214
  break;
215
- case -2 /* emnapi_memory_view_type.emnapi_buffer */:
215
+ case -2 /* emnapi_memory_view_type.emnapi_buffer */: {
216
+ if (!emnapiCtx.feature.Buffer) {
217
+ throw emnapiCtx.createNotSupportBufferError("emnapi_create_memory_view", "");
218
+ }
216
219
  viewDescriptor_1 = { Ctor: emnapiCtx.feature.Buffer, address: external_data, length: byte_length, ownership: 1 /* Ownership.kUserland */, runtimeAllocated: 0 };
217
220
  break;
221
+ }
218
222
  default: return envObject_1.setLastError(1 /* napi_status.napi_invalid_arg */);
219
223
  }
220
224
  var Ctor_1 = viewDescriptor_1.Ctor;
@@ -1380,7 +1384,7 @@ var emnapiExternalMemory = {
1380
1384
  if (!shouldCopy) {
1381
1385
  return info;
1382
1386
  }
1383
- var pointer = {{{ makeMalloc('$emnapiExternalMemory.getArrayBufferPointer', 'arrayBuffer.byteLength') }}};
1387
+ var pointer = _malloc({{{ to64('arrayBuffer.byteLength') }}});
1384
1388
  if (!pointer)
1385
1389
  throw new Error('Out of memory');
1386
1390
  new Uint8Array(wasmMemory.buffer).set(new Uint8Array(arrayBuffer), pointer);
@@ -2752,7 +2756,7 @@ var emnapiTSFN = {
2752
2756
  },
2753
2757
  initQueue: function (func) {
2754
2758
  var size = 2 * {{{ POINTER_SIZE }}};
2755
- var queue = {{{ makeMalloc('emnapiTSFN.initQueue', 'size') }}};
2759
+ var queue = _malloc({{{ to64('size') }}});
2756
2760
  if (!queue)
2757
2761
  return false;
2758
2762
  new Uint8Array(wasmMemory.buffer, queue, size).fill(0);
@@ -2771,7 +2775,7 @@ var emnapiTSFN = {
2771
2775
  var tail = emnapiTSFN.loadSizeTypeValue(queue + {{{ POINTER_SIZE }}}, false);
2772
2776
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
2773
2777
  var size = 2 * {{{ POINTER_SIZE }}};
2774
- var node = {{{ makeMalloc('emnapiTSFN.pushQueue', 'size') }}};
2778
+ var node = _malloc({{{ to64('size') }}});
2775
2779
  if (!node)
2776
2780
  throw new Error('OOM');
2777
2781
  emnapiTSFN.storeSizeTypeValue(node, data, false);
@@ -3361,7 +3365,7 @@ function _napi_create_threadsafe_function(env, func, async_resource, async_resou
3361
3365
  var resource_name = envObject.ensureHandleId(asyncResourceName);
3362
3366
  // tsfn create
3363
3367
  var sizeofTSFN = emnapiTSFN.offset.end;
3364
- var tsfn = {{{ makeMalloc('napi_create_threadsafe_function', 'sizeofTSFN') }}};
3368
+ var tsfn = _malloc({{{ to64('sizeofTSFN') }}});
3365
3369
  if (!tsfn)
3366
3370
  return envObject.setLastError(9 /* napi_status.napi_generic_failure */);
3367
3371
  new Uint8Array(wasmMemory.buffer).subarray(tsfn, tsfn + sizeofTSFN).fill(0);
@@ -3488,6 +3492,8 @@ function _napi_ref_threadsafe_function(env, func) {
3488
3492
  emnapiDefineVar('$emnapiTSFN', emnapiTSFN, [
3489
3493
  '$emnapiInit',
3490
3494
  '$PThread',
3495
+ 'malloc',
3496
+ 'free',
3491
3497
  '_emnapi_node_emit_async_init',
3492
3498
  '_emnapi_node_emit_async_destroy',
3493
3499
  '_emnapi_runtime_keepalive_pop',
@@ -5429,8 +5435,11 @@ function napi_create_buffer(env, size, data, result
5429
5435
  try {
5430
5436
  if (result == 0)
5431
5437
  return envObject_56.setLastError(1 /* napi_status.napi_invalid_arg */);
5432
- {{{ from64("result") }}};
5433
5438
  var Buffer_1 = emnapiCtx.feature.Buffer;
5439
+ if (!Buffer_1) {
5440
+ throw emnapiCtx.createNotSupportBufferError("napi_create_buffer", "");
5441
+ }
5442
+ {{{ from64("result") }}};
5434
5443
  var buffer_2 = void 0;
5435
5444
  {{{ from64("size") }}};
5436
5445
  size = size >>> 0;
@@ -5440,7 +5449,7 @@ function napi_create_buffer(env, size, data, result
5440
5449
  {{{ makeSetValue("result", 0, "value", "*") }}};
5441
5450
  }
5442
5451
  else {
5443
- pointer = {{{ makeMalloc("napi_create_buffer", "size") }}};
5452
+ pointer = _malloc({{{ to64("size") }}});
5444
5453
  if (!pointer)
5445
5454
  throw new Error("Out of memory");
5446
5455
  new Uint8Array(wasmMemory.buffer).subarray(pointer, pointer + size).fill(0);
@@ -5483,8 +5492,8 @@ function napi_create_buffer_copy(env, length, data, result_data, result
5483
5492
  try {
5484
5493
  if (result == 0)
5485
5494
  return envObject_57.setLastError(1 /* napi_status.napi_invalid_arg */);
5486
- var arrayBuffer_3 = emnapiCreateArrayBuffer(length, result_data);
5487
5495
  var Buffer_2 = emnapiCtx.feature.Buffer;
5496
+ var arrayBuffer_3 = emnapiCreateArrayBuffer(length, result_data);
5488
5497
  var buffer_4 = Buffer_2.from(arrayBuffer_3);
5489
5498
  {{{ from64("data") }}};
5490
5499
  {{{ from64("length") }}};
@@ -2,11 +2,9 @@
2
2
  #define EMNAPI_INCLUDE_COMMON_H_
3
3
 
4
4
  #ifdef __EMSCRIPTEN__
5
- #define NAPI_EXTERN __attribute__((visibility("default"))) \
6
- __attribute__((__import_module__("env")))
5
+ #define NAPI_EXTERN __attribute__((__import_module__("env")))
7
6
 
8
- #define EMNAPI_EXTERN __attribute__((visibility("default"))) \
9
- __attribute__((__import_module__("env")))
7
+ #define EMNAPI_EXTERN __attribute__((__import_module__("env")))
10
8
  #else
11
9
  #define NAPI_EXTERN __attribute__((__import_module__("napi")))
12
10