@@ -640,12 +640,11 @@ Environment::Environment(IsolateData* isolate_data,
640
640
async_hooks_(isolate, MAYBE_FIELD_PTR(env_info, async_hooks)),
641
641
immediate_info_(isolate, MAYBE_FIELD_PTR(env_info, immediate_info)),
642
642
tick_info_(isolate, MAYBE_FIELD_PTR(env_info, tick_info)),
643
- exit_info_(isolate, MAYBE_FIELD_PTR(env_info, exit_info)),
644
643
timer_base_(uv_now(isolate_data->event_loop ())),
645
644
exec_argv_(exec_args),
646
645
argv_(args),
647
646
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 )),
649
648
should_abort_on_uncaught_toggle_(
650
649
isolate_,
651
650
1 ,
@@ -1508,29 +1507,6 @@ void AsyncHooks::FailWithCorruptedAsyncStack(double expected_async_id) {
1508
1507
ABORT_NO_BACKTRACE ();
1509
1508
}
1510
1509
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
-
1534
1510
void Environment::Exit (ExitCode exit_code) {
1535
1511
if (options ()->trace_exit ) {
1536
1512
HandleScope handle_scope (isolate ());
@@ -1619,9 +1595,8 @@ EnvSerializeInfo Environment::Serialize(SnapshotCreator* creator) {
1619
1595
info.async_hooks = async_hooks_.Serialize (ctx, creator);
1620
1596
info.immediate_info = immediate_info_.Serialize (ctx, creator);
1621
1597
info.tick_info = tick_info_.Serialize (ctx, creator);
1622
- info.exit_info = exit_info_.Serialize (ctx, creator);
1623
1598
info.performance_state = performance_state_->Serialize (ctx, creator);
1624
- info.exiting = exiting_ .Serialize (ctx, creator);
1599
+ info.exit_info = exit_info_ .Serialize (ctx, creator);
1625
1600
info.stream_base_state = stream_base_state_.Serialize (ctx, creator);
1626
1601
info.should_abort_on_uncaught_toggle =
1627
1602
should_abort_on_uncaught_toggle_.Serialize (ctx, creator);
@@ -1662,9 +1637,8 @@ void Environment::DeserializeProperties(const EnvSerializeInfo* info) {
1662
1637
async_hooks_.Deserialize (ctx);
1663
1638
immediate_info_.Deserialize (ctx);
1664
1639
tick_info_.Deserialize (ctx);
1665
- exit_info_.Deserialize (ctx);
1666
1640
performance_state_->Deserialize (ctx);
1667
- exiting_ .Deserialize (ctx);
1641
+ exit_info_ .Deserialize (ctx);
1668
1642
stream_base_state_.Deserialize (ctx);
1669
1643
should_abort_on_uncaught_toggle_.Deserialize (ctx);
1670
1644
@@ -1851,15 +1825,14 @@ void Environment::MemoryInfo(MemoryTracker* tracker) const {
1851
1825
tracker->TrackField (" builtins_without_cache" , builtins_without_cache);
1852
1826
tracker->TrackField (" destroy_async_id_list" , destroy_async_id_list_);
1853
1827
tracker->TrackField (" exec_argv" , exec_argv_);
1854
- tracker->TrackField (" exiting " , exiting_ );
1828
+ tracker->TrackField (" exit_info " , exit_info_ );
1855
1829
tracker->TrackField (" should_abort_on_uncaught_toggle" ,
1856
1830
should_abort_on_uncaught_toggle_);
1857
1831
tracker->TrackField (" stream_base_state" , stream_base_state_);
1858
1832
tracker->TrackField (" cleanup_queue" , cleanup_queue_);
1859
1833
tracker->TrackField (" async_hooks" , async_hooks_);
1860
1834
tracker->TrackField (" immediate_info" , immediate_info_);
1861
1835
tracker->TrackField (" tick_info" , tick_info_);
1862
- tracker->TrackField (" exit_info" , exit_info_);
1863
1836
tracker->TrackField (" principal_realm" , principal_realm_);
1864
1837
1865
1838
// FIXME(joyeecheung): track other fields in Environment.
0 commit comments