]> git.kaiwu.me - njs.git/commitdiff
QuickJS: fixed ngx_qjs_string() to handle strings containing "\0".
authorhongzhidao <hongzhidao@gmail.com>
Wed, 19 Mar 2025 05:47:07 +0000 (13:47 +0800)
committerhongzhidao <hongzhidao@gmail.com>
Wed, 19 Mar 2025 07:07:26 +0000 (15:07 +0800)
nginx/ngx_js.c

index 84cdcc2eb1f068e16702e1c2a7f6b9951269039c..c91a553085c9a28708d703ac96165b36978e6f9b 100644 (file)
@@ -1482,13 +1482,11 @@ ngx_qjs_string(JSContext *cx, JSValueConst val, ngx_str_t *dst)
 
 string:
 
-    str = JS_ToCString(cx, val);
+    str = JS_ToCStringLen(cx, &len, val);
     if (str == NULL) {
         return NGX_ERROR;
     }
 
-    len = strlen(str);
-
     start = njs_mp_alloc(e->pool, len);
     if (start == NULL) {
         JS_FreeCString(cx, str);