From b5e7080c9e6d5bd332b339195ec1ff88a5cabc62 Mon Sep 17 00:00:00 2001 From: Angelo Dell'Aera Date: Mon, 18 Nov 2024 16:21:24 +0100 Subject: [PATCH 1/2] Upgrade V8 to v13.1.201.8 --- settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py b/settings.py index fd39b78b..0d7d5303 100644 --- a/settings.py +++ b/settings.py @@ -7,7 +7,7 @@ V8_HOME = os.environ.get("V8_HOME", os.path.join(STPYV8_HOME, "v8")) V8_GIT_URL = "https://chromium.googlesource.com/v8/v8.git" -V8_GIT_TAG_STABLE = "13.0.245.18" +V8_GIT_TAG_STABLE = "13.1.201.8" V8_GIT_TAG_MASTER = "master" V8_GIT_TAG = V8_GIT_TAG_STABLE DEPOT_GIT_URL = "https://chromium.googlesource.com/chromium/tools/depot_tools.git" From 46565bd94f70f94a88613fd4fb746da0f23c9a04 Mon Sep 17 00:00:00 2001 From: Angelo Dell'Aera Date: Mon, 18 Nov 2024 18:28:29 +0100 Subject: [PATCH 2/2] Sandbox escape bug fix (credits: Jesse Rusak) --- src/Wrapper.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Wrapper.cpp b/src/Wrapper.cpp index 1c06bc03..4cf4f6de 100644 --- a/src/Wrapper.cpp +++ b/src/Wrapper.cpp @@ -968,7 +968,7 @@ v8::Handle CPythonObject::WrapInternal(py::object obj) result = v8::Date::New(isolate->GetCurrentContext(), ((double) mktime(&ts)) * 1000 + ms / 1000).ToLocalChecked(); } - else if (PyCFunction_Check(obj.ptr()) || PyFunction_Check(obj.ptr()) || PyMethod_Check(obj.ptr()) || PyType_CheckExact(obj.ptr())) + else if (PyCFunction_Check(obj.ptr()) || PyFunction_Check(obj.ptr()) || PyMethod_Check(obj.ptr()) || PyType_Check(obj.ptr())) { v8::Handle func_tmpl = v8::FunctionTemplate::New(isolate); py::object *object = new py::object(obj);