Shell: Only prompt the user for a second 'exit' when in interactive mode

This commit is contained in:
AnotherTest 2020-10-27 17:13:43 +03:30 committed by Andreas Kling
commit 2610477836
Notes: sideshowbarker 2024-07-19 01:40:18 +09:00

View file

@ -262,11 +262,13 @@ int Shell::builtin_exit(int argc, const char** argv)
if (!parser.parse(argc, const_cast<char**>(argv))) if (!parser.parse(argc, const_cast<char**>(argv)))
return 1; return 1;
if (!jobs.is_empty()) { if (m_is_interactive) {
if (!m_should_ignore_jobs_on_next_exit) { if (!jobs.is_empty()) {
fprintf(stderr, "Shell: You have %zu active job%s, run 'exit' again to really exit.\n", jobs.size(), jobs.size() > 1 ? "s" : ""); if (!m_should_ignore_jobs_on_next_exit) {
m_should_ignore_jobs_on_next_exit = true; fprintf(stderr, "Shell: You have %zu active job%s, run 'exit' again to really exit.\n", jobs.size(), jobs.size() > 1 ? "s" : "");
return 1; m_should_ignore_jobs_on_next_exit = true;
return 1;
}
} }
} }
stop_all_jobs(); stop_all_jobs();