소스 검색

LibGUI: Add GUI::Application::in_teardown()

This will return true after ~GUI::Application() has been entered.
Andreas Kling 3 년 전
부모
커밋
24ea6a8ce7
2개의 변경된 파일10개의 추가작업 그리고 0개의 파일을 삭제
  1. 8 0
      Userland/Libraries/LibGUI/Application.cpp
  2. 2 0
      Userland/Libraries/LibGUI/Application.h

+ 8 - 0
Userland/Libraries/LibGUI/Application.cpp

@@ -101,8 +101,16 @@ Application::Application(int argc, char** argv, Core::EventLoop::MakeInspectable
     });
 }
 
+static bool s_in_teardown;
+
+bool Application::in_teardown()
+{
+    return s_in_teardown;
+}
+
 Application::~Application()
 {
+    s_in_teardown = true;
     revoke_weak_ptrs();
 }
 

+ 2 - 0
Userland/Libraries/LibGUI/Application.h

@@ -27,6 +27,8 @@ public:
 
     ~Application();
 
+    static bool in_teardown();
+
     int exec();
     void quit(int = 0);