expose_v8initializer_codegenerationcheckcallbackinmainthread.patch 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
  2. From: Jeremy Rose <[email protected]>
  3. Date: Mon, 5 Dec 2022 14:27:20 -0800
  4. Subject: expose V8Initializer::CodeGenerationCheckCallbackInMainThread
  5. This is needed to blend Blink and Node's policy for code generation policy.
  6. diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
  7. index 60e8ed950dad31a220bbe8a9197fbe25f429fe83..b8b20d8c8340c63bd3039a0683446ef1eb4fdf0d 100644
  8. --- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
  9. +++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
  10. @@ -439,8 +439,9 @@ TrustedTypesCodeGenerationCheck(v8::Local<v8::Context> context,
  11. return {true, V8String(context->GetIsolate(), stringified_source)};
  12. }
  13. -static v8::ModifyCodeGenerationFromStringsResult
  14. -CodeGenerationCheckCallbackInMainThread(v8::Local<v8::Context> context,
  15. +// static
  16. +v8::ModifyCodeGenerationFromStringsResult
  17. +V8Initializer::CodeGenerationCheckCallbackInMainThread(v8::Local<v8::Context> context,
  18. v8::Local<v8::Value> source,
  19. bool is_code_like) {
  20. // The TC39 "Dynamic Code Brand Check" feature is currently behind a flag.
  21. diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.h b/third_party/blink/renderer/bindings/core/v8/v8_initializer.h
  22. index 39d1351a4a8bbc95097640be54affec426abe73e..30a36cf16d4a8f4692ec6a13be1217212390172a 100644
  23. --- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.h
  24. +++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.h
  25. @@ -69,6 +69,10 @@ class CORE_EXPORT V8Initializer {
  26. v8::Local<v8::Value>);
  27. static void MessageHandlerInWorker(v8::Local<v8::Message>,
  28. v8::Local<v8::Value>);
  29. + static v8::ModifyCodeGenerationFromStringsResult
  30. + CodeGenerationCheckCallbackInMainThread(v8::Local<v8::Context> context,
  31. + v8::Local<v8::Value> source,
  32. + bool is_code_like);
  33. static bool WasmCodeGenerationCheckCallbackInMainThread(
  34. v8::Local<v8::Context> context,
  35. v8::Local<v8::String> source);