From bbf06e78ba039b67077e1c44d0c3adc4d141e837 Mon Sep 17 00:00:00 2001 From: Timothy Stack Date: Tue, 15 Sep 2020 15:44:29 -0700 Subject: [PATCH] [init] delay initial command execution until some files are loaded Fixes #764 --- src/lnav.cc | 10 +++++----- src/session_data.cc | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/lnav.cc b/src/lnav.cc index c3075b52..9b32c3d7 100644 --- a/src/lnav.cc +++ b/src/lnav.cc @@ -1645,8 +1645,8 @@ static void looper() } rebuild_indexes(); if (!initial_build && - lnav_data.ld_log_source.text_line_count() == 0 && - lnav_data.ld_text_source.text_line_count() > 0) { + lnav_data.ld_log_source.text_line_count() == 0 && + lnav_data.ld_text_source.text_line_count() > 0) { ensure_view(&lnav_data.ld_views[LNV_TEXT]); lnav_data.ld_views[LNV_TEXT].set_top(vis_line_t(0)); lnav_data.ld_rl_view->set_alt_value( @@ -1662,8 +1662,8 @@ static void looper() lnav_data.ld_views[LNV_LOG].set_top(tc_log->get_top_for_last_row()); } if (!initial_build && - lnav_data.ld_log_source.text_line_count() == 0 && - !lnav_data.ld_other_files.empty()) { + lnav_data.ld_log_source.text_line_count() == 0 && + !lnav_data.ld_other_files.empty()) { ensure_view(&lnav_data.ld_views[LNV_SCHEMA]); } @@ -1677,7 +1677,7 @@ static void looper() initial_build = true; } - if (!session_loaded) { + if (initial_build && !session_loaded) { load_session(); if (lnav_data.ld_session_save_time) { std::string ago; diff --git a/src/session_data.cc b/src/session_data.cc index ba36e159..a120c1e0 100644 --- a/src/session_data.cc +++ b/src/session_data.cc @@ -1297,7 +1297,7 @@ static void save_session_with_id(const std::string session_id) view_map.gen("commands"); yajlpp_array cmd_array(handle); - for (const auto filter : fs) { + for (const auto& filter : fs) { string cmd = filter->to_command(); if (cmd.empty()) { @@ -1332,7 +1332,7 @@ static void save_session_with_id(const std::string session_id) continue; } - for (auto vd : elf->elf_value_defs) { + for (const auto& vd : elf->elf_value_defs) { if (!vd.second->vd_user_hidden) { continue; }