@@ -211,7 +211,7 @@ js_create_platform(uv_loop_t *loop, const js_platform_options_t *options, js_pla
211
211
js_platform_t * platform = malloc (sizeof (js_platform_t ));
212
212
213
213
platform -> loop = loop ;
214
- platform -> options = options ? * options : (js_platform_options_t ){};
214
+ platform -> options = options ? * options : (js_platform_options_t ) {};
215
215
216
216
* result = platform ;
217
217
@@ -304,7 +304,7 @@ js__on_delegate_finalize(JSRuntime *runtime, JSValue value);
304
304
static JSClassDef js_delegate_class = {
305
305
.class_name = "Delegate" ,
306
306
.finalizer = js__on_delegate_finalize ,
307
- .exotic = & (JSClassExoticMethods ){
307
+ .exotic = & (JSClassExoticMethods ) {
308
308
.get_own_property = js__on_delegate_get_own_property ,
309
309
.get_own_property_names = js__on_delegate_get_own_property_names ,
310
310
.delete_property = js__on_delegate_delete_property ,
@@ -405,7 +405,7 @@ js__on_uncaught_exception(JSContext *context, JSValue error) {
405
405
406
406
env -> callbacks .uncaught_exception (
407
407
env ,
408
- & (js_value_t ){error },
408
+ & (js_value_t ) {error },
409
409
env -> callbacks .uncaught_exception_data
410
410
);
411
411
@@ -431,8 +431,8 @@ js__on_unhandled_rejection(JSContext *context, JSValue promise, JSValue reason)
431
431
432
432
env -> callbacks .unhandled_rejection (
433
433
env ,
434
- & (js_value_t ){reason },
435
- & (js_value_t ){promise },
434
+ & (js_value_t ) {reason },
435
+ & (js_value_t ) {promise },
436
436
env -> callbacks .unhandled_rejection_data
437
437
);
438
438
@@ -607,7 +607,7 @@ js_create_env(uv_loop_t *loop, js_platform_t *platform, const js_env_options_t *
607
607
int err ;
608
608
609
609
JSRuntime * runtime = JS_NewRuntime2 (
610
- & (JSMallocFunctions ){
610
+ & (JSMallocFunctions ) {
611
611
.js_calloc = js__on_calloc ,
612
612
.js_malloc = js__on_malloc ,
613
613
.js_free = js__on_free ,
@@ -619,7 +619,7 @@ js_create_env(uv_loop_t *loop, js_platform_t *platform, const js_env_options_t *
619
619
620
620
JS_SetSharedArrayBufferFunctions (
621
621
runtime ,
622
- & (JSSharedArrayBufferFunctions ){
622
+ & (JSSharedArrayBufferFunctions ) {
623
623
.sab_alloc = js__on_shared_malloc ,
624
624
.sab_free = js__on_shared_free ,
625
625
.sab_dup = js__on_shared_dup ,
@@ -994,10 +994,18 @@ js_create_module(js_env_t *env, const char *name, size_t len, int offset, js_val
994
994
module -> source = JS_DupValue (env -> context , source -> value );
995
995
module -> bytecode = JS_NULL ;
996
996
module -> definition = NULL ;
997
- module -> name = strndup (name , len );
998
997
module -> meta = cb ;
999
998
module -> meta_data = data ;
1000
999
1000
+ if (len == (size_t ) -1 ) {
1001
+ module -> name = strdup (name );
1002
+ } else {
1003
+ module -> name = malloc (len + 1 );
1004
+ module -> name [len ] = '\0' ;
1005
+
1006
+ memcpy (module -> name , name , len );
1007
+ }
1008
+
1001
1009
* result = module ;
1002
1010
1003
1011
return 0 ;
@@ -1037,10 +1045,18 @@ js_create_synthetic_module(js_env_t *env, const char *name, size_t len, js_value
1037
1045
module -> source = JS_NULL ;
1038
1046
module -> bytecode = JS_NULL ;
1039
1047
module -> definition = JS_NewCModule (env -> context , name , js__on_evaluate_module );
1040
- module -> name = strndup (name , len );
1041
1048
module -> meta = NULL ;
1042
1049
module -> meta_data = NULL ;
1043
1050
1051
+ if (len == (size_t ) -1 ) {
1052
+ module -> name = strdup (name );
1053
+ } else {
1054
+ module -> name = malloc (len + 1 );
1055
+ module -> name [len ] = '\0' ;
1056
+
1057
+ memcpy (module -> name , name , len );
1058
+ }
1059
+
1044
1060
for (size_t i = 0 ; i < names_len ; i ++ ) {
1045
1061
const char * str = JS_ToCString (env -> context , export_names [i ]-> value );
1046
1062
@@ -1181,7 +1197,7 @@ js_run_module(js_env_t *env, js_module_t *module, js_value_t **result) {
1181
1197
if (module -> meta ) {
1182
1198
JSValue meta = JS_GetImportMeta (env -> context , module -> definition );
1183
1199
1184
- module -> meta (env , module , & (js_value_t ){meta }, module -> meta_data );
1200
+ module -> meta (env , module , & (js_value_t ) {meta }, module -> meta_data );
1185
1201
1186
1202
JS_FreeValue (env -> context , meta );
1187
1203
@@ -1192,7 +1208,7 @@ js_run_module(js_env_t *env, js_module_t *module, js_value_t **result) {
1192
1208
err = js_create_promise (env , & deferred , result );
1193
1209
if (err < 0 ) return err ;
1194
1210
1195
- js_reject_deferred (env , deferred , & (js_value_t ){error });
1211
+ js_reject_deferred (env , deferred , & (js_value_t ) {error });
1196
1212
1197
1213
JS_FreeValue (env -> context , error );
1198
1214
@@ -1217,7 +1233,7 @@ js_run_module(js_env_t *env, js_module_t *module, js_value_t **result) {
1217
1233
err = js_create_promise (env , & deferred , result );
1218
1234
if (err < 0 ) return err ;
1219
1235
1220
- js_reject_deferred (env , deferred , & (js_value_t ){error });
1236
+ js_reject_deferred (env , deferred , & (js_value_t ) {error });
1221
1237
1222
1238
JS_FreeValue (env -> context , error );
1223
1239
@@ -1498,7 +1514,7 @@ js_define_class(js_env_t *env, const char *name, size_t len, js_function_cb cons
1498
1514
}
1499
1515
}
1500
1516
1501
- err = js_define_properties (env , & (js_value_t ){prototype }, instance_properties , instance_properties_len );
1517
+ err = js_define_properties (env , & (js_value_t ) {prototype }, instance_properties , instance_properties_len );
1502
1518
assert (err == 0 );
1503
1519
1504
1520
free (instance_properties );
@@ -1515,7 +1531,7 @@ js_define_class(js_env_t *env, const char *name, size_t len, js_function_cb cons
1515
1531
}
1516
1532
}
1517
1533
1518
- err = js_define_properties (env , & (js_value_t ){class }, static_properties , static_properties_len );
1534
+ err = js_define_properties (env , & (js_value_t ) {class }, static_properties , static_properties_len );
1519
1535
assert (err == 0 );
1520
1536
1521
1537
free (static_properties );
@@ -1700,7 +1716,7 @@ js__on_delegate_get_own_property(JSContext *context, JSPropertyDescriptor *descr
1700
1716
if (delegate -> callbacks .has ) {
1701
1717
JSValue property = JS_AtomToValue (env -> context , name );
1702
1718
1703
- bool exists = delegate -> callbacks .has (env , & (js_value_t ){property }, delegate -> data );
1719
+ bool exists = delegate -> callbacks .has (env , & (js_value_t ) {property }, delegate -> data );
1704
1720
1705
1721
JS_FreeValue (env -> context , property );
1706
1722
@@ -1712,7 +1728,7 @@ js__on_delegate_get_own_property(JSContext *context, JSPropertyDescriptor *descr
1712
1728
if (delegate -> callbacks .get ) {
1713
1729
JSValue property = JS_AtomToValue (env -> context , name );
1714
1730
1715
- js_value_t * result = delegate -> callbacks .get (env , & (js_value_t ){property }, delegate -> data );
1731
+ js_value_t * result = delegate -> callbacks .get (env , & (js_value_t ) {property }, delegate -> data );
1716
1732
1717
1733
JS_FreeValue (env -> context , property );
1718
1734
@@ -1781,7 +1797,7 @@ js__on_delegate_delete_property(JSContext *context, JSValueConst object, JSAtom
1781
1797
if (delegate -> callbacks .delete_property ) {
1782
1798
JSValue property = JS_AtomToValue (env -> context , name );
1783
1799
1784
- bool success = delegate -> callbacks .delete_property (env , & (js_value_t ){property }, delegate -> data );
1800
+ bool success = delegate -> callbacks .delete_property (env , & (js_value_t ) {property }, delegate -> data );
1785
1801
1786
1802
JS_FreeValue (env -> context , property );
1787
1803
@@ -1802,7 +1818,7 @@ js__on_delegate_set_property(JSContext *context, JSValueConst object, JSAtom nam
1802
1818
if (delegate -> callbacks .set ) {
1803
1819
JSValue property = JS_AtomToValue (env -> context , name );
1804
1820
1805
- bool success = delegate -> callbacks .set (env , & (js_value_t ){property }, & (js_value_t ){value }, delegate -> data );
1821
+ bool success = delegate -> callbacks .set (env , & (js_value_t ) {property }, & (js_value_t ) {value }, delegate -> data );
1806
1822
1807
1823
JS_FreeValue (env -> context , property );
1808
1824
0 commit comments