aboutsummaryrefslogtreecommitdiff
path: root/src/win/native/ui_application.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/win/native/ui_application.cpp')
-rw-r--r--src/win/native/ui_application.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/win/native/ui_application.cpp b/src/win/native/ui_application.cpp
index f3a7f1dc..0ae8ee81 100644
--- a/src/win/native/ui_application.cpp
+++ b/src/win/native/ui_application.cpp
@@ -24,6 +24,12 @@ WinUiApplication::WinUiApplication() {
}
instance = this;
+ IUiApplication::instance = this;
+
+ instance_handle_ = ::GetModuleHandleW(nullptr);
+ if (!instance_handle_)
+ throw Win32Error(::GetLastError(),
+ "Failed to get module(instance) handle.");
log::Logger::GetInstance()->AddSource(
std::make_unique<::cru::platform::win::WinDebugLoggerSource>());
@@ -37,7 +43,10 @@ WinUiApplication::WinUiApplication() {
cursor_manager_ = std::make_unique<WinCursorManager>();
}
-WinUiApplication::~WinUiApplication() { instance = nullptr; }
+WinUiApplication::~WinUiApplication() {
+ IUiApplication::instance = nullptr;
+ instance = nullptr;
+}
int WinUiApplication::Run() {
MSG msg;