From e46b9c189e1bc94de2b977af63b59acab6840a4c Mon Sep 17 00:00:00 2001 From: MacDue Date: Mon, 13 Mar 2023 20:34:50 +0000 Subject: [PATCH] Taskbar: Use Process::spawn_or_show_error() to open the "Run" dialog --- Userland/Services/Taskbar/main.cpp | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/Userland/Services/Taskbar/main.cpp b/Userland/Services/Taskbar/main.cpp index 1e0d1bc305..ee44ae766f 100644 --- a/Userland/Services/Taskbar/main.cpp +++ b/Userland/Services/Taskbar/main.cpp @@ -250,22 +250,8 @@ ErrorOr> build_system_menu(GUI::Window& window) system_menu->add_action(GUI::Action::create("&Help", TRY(Gfx::Bitmap::load_from_file("/res/icons/16x16/app-help.png"sv)), [&](auto&) { GUI::Process::spawn_or_show_error(&window, "/bin/Help"sv); })); - system_menu->add_action(GUI::Action::create("&Run...", TRY(Gfx::Bitmap::load_from_file("/res/icons/16x16/app-run.png"sv)), [](auto&) { - posix_spawn_file_actions_t spawn_actions; - posix_spawn_file_actions_init(&spawn_actions); - auto home_directory = Core::StandardPaths::home_directory(); - posix_spawn_file_actions_addchdir(&spawn_actions, home_directory.characters()); - - pid_t child_pid; - const char* argv[] = { "/bin/Run", nullptr }; - if ((errno = posix_spawn(&child_pid, "/bin/Run", &spawn_actions, nullptr, const_cast(argv), environ))) { - perror("posix_spawn"); - } else { - if (disown(child_pid) < 0) - perror("disown"); - } - - posix_spawn_file_actions_destroy(&spawn_actions); + system_menu->add_action(GUI::Action::create("&Run...", TRY(Gfx::Bitmap::load_from_file("/res/icons/16x16/app-run.png"sv)), [&](auto&) { + GUI::Process::spawn_or_show_error(&window, "/bin/Run"sv, ReadonlySpan {}, Core::StandardPaths::home_directory()); })); system_menu->add_separator(); system_menu->add_action(GUI::Action::create("E&xit...", TRY(Gfx::Bitmap::load_from_file("/res/icons/16x16/power.png"sv)), [](auto&) {