Переглянути джерело

MenuApplets: Username: init app early, pledge early, do not unveil /tmp

Brendan Coles 4 роки тому
батько
коміт
6b6594e3d0
1 змінених файлів з 5 додано та 10 видалено
  1. 5 10
      MenuApplets/UserName/main.cpp

+ 5 - 10
MenuApplets/UserName/main.cpp

@@ -69,12 +69,14 @@ int main(int argc, char** argv)
         return 1;
     }
 
-    if (unveil("/res", "r") < 0) {
-        perror("unveil");
+    auto app = GUI::Application::construct(argc, argv);
+
+    if (pledge("stdio shared_buffer rpath", nullptr) < 0) {
+        perror("pledge");
         return 1;
     }
 
-    if (unveil("/tmp", "rwc") < 0) {
+    if (unveil("/res", "r") < 0) {
         perror("unveil");
         return 1;
     }
@@ -86,8 +88,6 @@ int main(int argc, char** argv)
 
     unveil(nullptr, nullptr);
 
-    auto app = GUI::Application::construct(argc, argv);
-
     auto window = GUI::Window::construct();
     window->set_title("UserName");
     window->set_window_type(GUI::WindowType::MenuApplet);
@@ -96,10 +96,5 @@ int main(int argc, char** argv)
     window->resize(widget.get_width(), 16);
     window->show();
 
-    if (pledge("stdio shared_buffer rpath", nullptr) < 0) {
-        perror("pledge");
-        return 1;
-    }
-
     return app->exec();
 }