Inspector: Exit if inspected process has not pledged accept

This commit is contained in:
Brendan Coles 2021-01-31 07:24:41 +00:00 committed by Andreas Kling
parent df2a4adcd2
commit 50092ea0ca
Notes: sideshowbarker 2024-07-18 22:42:49 +09:00

View file

@ -28,10 +28,12 @@
#include "RemoteObjectGraphModel.h"
#include "RemoteObjectPropertyModel.h"
#include "RemoteProcess.h"
#include <LibCore/ProcessStatisticsReader.h>
#include <LibGUI/Application.h>
#include <LibGUI/BoxLayout.h>
#include <LibGUI/Menu.h>
#include <LibGUI/MenuBar.h>
#include <LibGUI/MessageBox.h>
#include <LibGUI/ModelEditingDelegate.h>
#include <LibGUI/ProcessChooser.h>
#include <LibGUI/Splitter.h>
@ -98,6 +100,20 @@ int main(int argc, char** argv)
}
auto window = GUI::Window::construct();
auto all_processes = Core::ProcessStatisticsReader::get_all();
for (auto& it : all_processes.value()) {
if (it.value.pid != pid)
continue;
if (it.value.pledge.is_empty())
break;
if (!it.value.pledge.contains("accept")) {
GUI::MessageBox::show(window, String::formatted("{} ({}) has not pledged accept!", it.value.name, pid), "Error", GUI::MessageBox::Type::Error);
return 1;
}
break;
}
window->set_title("Inspector");
window->resize(685, 500);
window->set_icon(app_icon.bitmap_for_size(16));