@@ -37,7 +37,8 @@ void uWS_App_ws(const FunctionCallbackInfo<Value> &args) {
3737 /* This one is default constructed with defaults */
3838 typename APP::template WebSocketBehavior<PerSocketData> behavior = {};
3939
40- NativeString pattern (args.GetIsolate (), args[0 ]);
40+ NativeStringContext nativeStringContext;
41+ NativeString pattern (nativeStringContext, args.GetIsolate (), args[0 ]);
4142 if (pattern.isInvalid (args)) {
4243 return ;
4344 }
@@ -313,8 +314,9 @@ template <typename APP, typename F>
313314void uWS_App_get (F f, const FunctionCallbackInfo<Value> &args) {
314315 APP *app = (APP *) args.This ()->GetAlignedPointerFromInternalField (0 );
315316
317+ NativeStringContext nativeStringContext;
316318 /* Pattern */
317- NativeString pattern (args.GetIsolate (), args[0 ]);
319+ NativeString pattern (nativeStringContext, args.GetIsolate (), args[0 ]);
318320 if (pattern.isInvalid (args)) {
319321 return ;
320322 }
@@ -328,7 +330,7 @@ void uWS_App_get(F f, const FunctionCallbackInfo<Value> &args) {
328330
329331 /* If the handler is String */
330332 if (args[1 ]->IsArrayBuffer ()) {
331- NativeString constantString (args.GetIsolate (), args[1 ]);
333+ NativeString constantString (nativeStringContext, args.GetIsolate (), args[1 ]);
332334 if (constantString.isInvalid (args)) {
333335 return ;
334336 }
@@ -513,7 +515,8 @@ void uWS_App_listen_unix(const FunctionCallbackInfo<Value> &args) {
513515
514516 /* Path is last */
515517 std::string path;
516- NativeString h (isolate, args[args.Length () - 1 ]);
518+ NativeStringContext nativeStringContext;
519+ NativeString h (nativeStringContext, isolate, args[args.Length () - 1 ]);
517520 if (h.isInvalid (args)) {
518521 return ;
519522 }
@@ -545,8 +548,9 @@ void uWS_App_listen(const FunctionCallbackInfo<Value> &args) {
545548
546549 /* Host is first, if present */
547550 std::string host;
551+ NativeStringContext nativeStringContext;
548552 if (!args[0 ]->IsNumber ()) {
549- NativeString h (isolate, args[0 ]);
553+ NativeString h (nativeStringContext, isolate, args[0 ]);
550554 if (h.isInvalid (args)) {
551555 return ;
552556 }
@@ -605,7 +609,8 @@ void uWS_App_domain(const FunctionCallbackInfo<Value> &args) {
605609 return ;
606610 }
607611
608- NativeString serverName (isolate, args[0 ]);
612+ NativeStringContext nativeStringContext;
613+ NativeString serverName (nativeStringContext, isolate, args[0 ]);
609614 if (serverName.isInvalid (args)) {
610615 return ;
611616 }
@@ -626,12 +631,13 @@ void uWS_App_publish(const FunctionCallbackInfo<Value> &args) {
626631 return ;
627632 }
628633
629- NativeString topic (isolate, args[0 ]);
634+ NativeStringContext nativeStringContext;
635+ NativeString topic (nativeStringContext, isolate, args[0 ]);
630636 if (topic.isInvalid (args)) {
631637 return ;
632638 }
633639
634- NativeString message (isolate, args[1 ]);
640+ NativeString message (nativeStringContext, isolate, args[1 ]);
635641 if (message.isInvalid (args)) {
636642 return ;
637643 }
@@ -652,7 +658,8 @@ void uWS_App_numSubscribers(const FunctionCallbackInfo<Value> &args) {
652658 return ;
653659 }
654660
655- NativeString topic (isolate, args[0 ]);
661+ NativeStringContext nativeStringContext;
662+ NativeString topic (nativeStringContext, isolate, args[0 ]);
656663 if (topic.isInvalid (args)) {
657664 return ;
658665 }
@@ -675,8 +682,9 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
675682
676683 Local<Object> optionsObject = Local<Object>::Cast (args[index]);
677684
685+ NativeStringContext nativeStringContext;
678686 /* Key file name */
679- NativeString keyFileNameValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " key_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
687+ NativeString keyFileNameValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " key_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
680688 if (keyFileNameValue.isInvalid (args)) {
681689 return {};
682690 }
@@ -686,7 +694,7 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
686694 }
687695
688696 /* Cert file name */
689- NativeString certFileNameValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " cert_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
697+ NativeString certFileNameValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " cert_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
690698 if (certFileNameValue.isInvalid (args)) {
691699 return {};
692700 }
@@ -696,7 +704,7 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
696704 }
697705
698706 /* Passphrase */
699- NativeString passphraseValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " passphrase" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
707+ NativeString passphraseValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " passphrase" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
700708 if (passphraseValue.isInvalid (args)) {
701709 return {};
702710 }
@@ -706,7 +714,7 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
706714 }
707715
708716 /* DH params file name */
709- NativeString dhParamsFileNameValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " dh_params_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
717+ NativeString dhParamsFileNameValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " dh_params_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
710718 if (dhParamsFileNameValue.isInvalid (args)) {
711719 return {};
712720 }
@@ -716,7 +724,7 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
716724 }
717725
718726 /* CA file name */
719- NativeString caFileNameValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " ca_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
727+ NativeString caFileNameValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " ca_file_name" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
720728 if (caFileNameValue.isInvalid (args)) {
721729 return {};
722730 }
@@ -729,7 +737,7 @@ std::pair<uWS::SocketContextOptions, bool> readOptionsObject(const FunctionCallb
729737 options.ssl_prefer_low_memory_usage = optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " ssl_prefer_low_memory_usage" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ()->BooleanValue (isolate);
730738
731739 /* ssl_ciphers */
732- NativeString sslCiphersValue (isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " ssl_ciphers" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
740+ NativeString sslCiphersValue (nativeStringContext, isolate, optionsObject->Get (isolate->GetCurrentContext (), String::NewFromUtf8 (isolate, " ssl_ciphers" , NewStringType::kNormal ).ToLocalChecked ()).ToLocalChecked ());
733741 if (sslCiphersValue.isInvalid (args)) {
734742 return {};
735743 }
@@ -824,7 +832,8 @@ void uWS_App_addServerName(const FunctionCallbackInfo<Value> &args) {
824832 APP *app = (APP *) args.This ()->GetAlignedPointerFromInternalField (0 );
825833
826834 Isolate *isolate = args.GetIsolate ();
827- NativeString hostnamePatternValue (isolate, args[0 ]);
835+ NativeStringContext nativeStringContext;
836+ NativeString hostnamePatternValue (nativeStringContext, isolate, args[0 ]);
828837 if (hostnamePatternValue.isInvalid (args)) {
829838 return ;
830839 }
@@ -848,7 +857,8 @@ void uWS_App_removeServerName(const FunctionCallbackInfo<Value> &args) {
848857 APP *app = (APP *) args.This ()->GetAlignedPointerFromInternalField (0 );
849858
850859 Isolate *isolate = args.GetIsolate ();
851- NativeString hostnamePatternValue (isolate, args[0 ]);
860+ NativeStringContext nativeStringContext;
861+ NativeString hostnamePatternValue (nativeStringContext, isolate, args[0 ]);
852862 if (hostnamePatternValue.isInvalid (args)) {
853863 return ;
854864 }
@@ -930,8 +940,9 @@ void uWS_App(const FunctionCallbackInfo<Value> &args) {
930940
931941 APP *app = (APP *) args.This ()->GetAlignedPointerFromInternalField (0 );
932942
943+ NativeStringContext nativeStringContext;
933944 /* Pattern */
934- NativeString pattern (args.GetIsolate (), args[0 ]);
945+ NativeString pattern (nativeStringContext, args.GetIsolate (), args[0 ]);
935946 if (pattern.isInvalid (args)) {
936947 return ;
937948 }
0 commit comments