diff -r b026a43e1809 -r 31ec3e55fa3d src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointManager.cpp --- a/src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointManager.cpp Tue Oct 29 09:34:23 2019 +0800 +++ b/src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointManager.cpp Tue Oct 29 11:33:25 2019 +0100 @@ -364,13 +364,13 @@ if (!LeakProfiler::is_running()) { JfrCheckpointWriter writer(true, true, Thread::current()); JfrTypeSet::serialize(&writer, NULL, false); - return; + } else { + Thread* const t = Thread::current(); + JfrCheckpointWriter leakp_writer(false, true, t); + JfrCheckpointWriter writer(false, true, t); + JfrTypeSet::serialize(&writer, &leakp_writer, false); + ObjectSampleCheckpoint::on_type_set(leakp_writer); } - Thread* const t = Thread::current(); - JfrCheckpointWriter leakp_writer(false, true, t); - JfrCheckpointWriter writer(false, true, t); - JfrTypeSet::serialize(&writer, &leakp_writer, false); - ObjectSampleCheckpoint::on_type_set(leakp_writer); } void JfrCheckpointManager::write_type_set_for_unloaded_classes() {