Even without any change for Hello World, I still get the below crash when exiting with v8 12.3.x:
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT) * frame #0: 0x00000001003b2ad0 hello-world`v8::internal::Isolate::Exit(this=0x0000000100000001) at isolate.cc:5060:3 [opt] frame #1: 0x0000000100004e08 hello-world`v8::Isolate::Scope::~Scope() + 24 frame #2: 0x0000000100004c25 hello-world`v8::Isolate::Scope::~Scope() + 21 frame #3: 0x0000000100004907 hello-world`main + 1607 frame #4: 0x00007ff804d2941f dyld`start + 1903 在2024年5月3日星期五 UTC+8 07:57:13<dong tommy> 写道: > The args are: > 'is_debug = true', > 'enable_iterator_debugging = true', > 'symbol_level = 1', > 'target_cpu = "x64"', > 'is_component_build = false', > 'is_chrome_branded = false', > 'treat_warnings_as_errors = false', > 'is_clang = true', > 'use_glib = false', > 'use_custom_libcxx = false', > 'use_custom_libcxx_for_host = false', > 'optimize_for_size = false', > 'v8_monolithic = true', > 'v8_static_library = true', > 'v8_use_external_startup_data = false', > 'v8_enable_i18n_support = false', > 'v8_enable_webassembly = false', > 'v8_enable_lite_mode = true', > 'v8_enable_snapshot_compression = true', > 'exclude_unwind_tables = true', > 'v8_enable_verify_heap = false' > > > > 在2024年5月3日星期五 UTC+8 07:48:53<dong tommy> 写道: > >> Hi Experts, >> >> I added a v8::EscapableHandleScope case and tested the below Hello World >> code( >> https://raw.githubusercontent.com/v8/v8/12.3.219/samples/hello-world.cc) >> for the V8 engine(https://github.com/v8/v8) and found that it works well >> with v8 11.x.x version. However, it crashed or aborted with v8 12.3.x >> version in GetObjectTemplate. Does anyone have any idea about that issue? >> or any mistake I made? Thanks! >> >> >> https://stackoverflow.com/questions/78420822/check-failed-on-escapablehandlescopeescape >> >> void Test(v8::Local<v8::Name> name, >> const v8::PropertyCallbackInfo<v8::Value>& info) { >> } >> >> v8::Local<v8::ObjectTemplate> GetObjectTemplate(v8::Isolate* isolate) >> { >> v8::EscapableHandleScope handle_scope(isolate); >> v8::Local<v8::ObjectTemplate> result = v8::ObjectTemplate::New(isolate); >> result->SetInternalFieldCount(1); >> result->SetHandler(v8::NamedPropertyHandlerConfiguration(Test)); >> return handle_scope.Escape(result); >> } >> >> int main(int argc, char* argv[]) { >> // Initialize V8. >> v8::V8::InitializeICUDefaultLocation(argv[0]); >> v8::V8::InitializeExternalStartupData(argv[0]); >> std::unique_ptr<v8::Platform> platform = >> v8::platform::NewDefaultPlatform(); >> v8::V8::InitializePlatform(platform.get()); >> v8::V8::Initialize(); >> >> // Create a new Isolate and make it the current one. >> v8::Isolate::CreateParams create_params; >> create_params.array_buffer_allocator = >> v8::ArrayBuffer::Allocator::NewDefaultAllocator(); >> v8::Isolate* isolate = v8::Isolate::New(create_params); >> { >> v8::Isolate::Scope isolate_scope(isolate); >> >> // Create a stack-allocated handle scope. >> v8::HandleScope handle_scope(isolate); >> >> v8::Local<v8::ObjectTemplate> global = GetObjectTemplate(isolate); // >> aborted here >> > -- -- v8-users mailing list v8-users@googlegroups.com http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-users/f011e3ee-ef58-46d1-a1eb-3d7dee6ad4aen%40googlegroups.com.