@@ -640,12 +640,11 @@ Environment::Environment(IsolateData* isolate_data,
640640 async_hooks_(isolate, MAYBE_FIELD_PTR(env_info, async_hooks)),
641641 immediate_info_(isolate, MAYBE_FIELD_PTR(env_info, immediate_info)),
642642 tick_info_(isolate, MAYBE_FIELD_PTR(env_info, tick_info)),
643- exit_info_(isolate, MAYBE_FIELD_PTR(env_info, exit_info)),
644643 timer_base_(uv_now(isolate_data->event_loop ())),
645644 exec_argv_(exec_args),
646645 argv_(args),
647646 exec_path_(GetExecPath(args)),
648- exiting_ (isolate_, 1 , MAYBE_FIELD_PTR(env_info, exiting )),
647+ exit_info_ (isolate_, 3 , MAYBE_FIELD_PTR(env_info, exit_info )),
649648 should_abort_on_uncaught_toggle_(
650649 isolate_,
651650 1 ,
@@ -1508,29 +1507,6 @@ void AsyncHooks::FailWithCorruptedAsyncStack(double expected_async_id) {
15081507 ABORT_NO_BACKTRACE ();
15091508}
15101509
1511- ExitInfo::SerializeInfo ExitInfo::Serialize (Local<Context> context,
1512- SnapshotCreator* creator) {
1513- return {fields_.Serialize (context, creator)};
1514- }
1515-
1516- void ExitInfo::Deserialize (Local<Context> context) {
1517- fields_.Deserialize (context);
1518- }
1519-
1520- std::ostream& operator <<(std::ostream& output,
1521- const ExitInfo::SerializeInfo& i) {
1522- output << " { " << i.fields << " }" ;
1523- return output;
1524- }
1525-
1526- void ExitInfo::MemoryInfo (MemoryTracker* tracker) const {
1527- tracker->TrackField (" fields" , fields_);
1528- }
1529-
1530- ExitInfo::ExitInfo (Isolate* isolate, const SerializeInfo* info)
1531- : fields_(
1532- isolate, kFieldsCount , info == nullptr ? nullptr : &(info->fields)) {}
1533-
15341510void Environment::Exit (ExitCode exit_code) {
15351511 if (options ()->trace_exit ) {
15361512 HandleScope handle_scope (isolate ());
@@ -1619,9 +1595,8 @@ EnvSerializeInfo Environment::Serialize(SnapshotCreator* creator) {
16191595 info.async_hooks = async_hooks_.Serialize (ctx, creator);
16201596 info.immediate_info = immediate_info_.Serialize (ctx, creator);
16211597 info.tick_info = tick_info_.Serialize (ctx, creator);
1622- info.exit_info = exit_info_.Serialize (ctx, creator);
16231598 info.performance_state = performance_state_->Serialize (ctx, creator);
1624- info.exiting = exiting_ .Serialize (ctx, creator);
1599+ info.exit_info = exit_info_ .Serialize (ctx, creator);
16251600 info.stream_base_state = stream_base_state_.Serialize (ctx, creator);
16261601 info.should_abort_on_uncaught_toggle =
16271602 should_abort_on_uncaught_toggle_.Serialize (ctx, creator);
@@ -1662,9 +1637,8 @@ void Environment::DeserializeProperties(const EnvSerializeInfo* info) {
16621637 async_hooks_.Deserialize (ctx);
16631638 immediate_info_.Deserialize (ctx);
16641639 tick_info_.Deserialize (ctx);
1665- exit_info_.Deserialize (ctx);
16661640 performance_state_->Deserialize (ctx);
1667- exiting_ .Deserialize (ctx);
1641+ exit_info_ .Deserialize (ctx);
16681642 stream_base_state_.Deserialize (ctx);
16691643 should_abort_on_uncaught_toggle_.Deserialize (ctx);
16701644
@@ -1851,15 +1825,14 @@ void Environment::MemoryInfo(MemoryTracker* tracker) const {
18511825 tracker->TrackField (" builtins_without_cache" , builtins_without_cache);
18521826 tracker->TrackField (" destroy_async_id_list" , destroy_async_id_list_);
18531827 tracker->TrackField (" exec_argv" , exec_argv_);
1854- tracker->TrackField (" exiting " , exiting_ );
1828+ tracker->TrackField (" exit_info " , exit_info_ );
18551829 tracker->TrackField (" should_abort_on_uncaught_toggle" ,
18561830 should_abort_on_uncaught_toggle_);
18571831 tracker->TrackField (" stream_base_state" , stream_base_state_);
18581832 tracker->TrackField (" cleanup_queue" , cleanup_queue_);
18591833 tracker->TrackField (" async_hooks" , async_hooks_);
18601834 tracker->TrackField (" immediate_info" , immediate_info_);
18611835 tracker->TrackField (" tick_info" , tick_info_);
1862- tracker->TrackField (" exit_info" , exit_info_);
18631836 tracker->TrackField (" principal_realm" , principal_realm_);
18641837
18651838 // FIXME(joyeecheung): track other fields in Environment.
0 commit comments