aboutsummaryrefslogtreecommitdiff
path: root/src/win/native/ui_application.cpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2019-12-13 01:02:47 +0800
committercrupest <crupest@outlook.com>2019-12-13 01:02:47 +0800
commit9110574bb51e9e2959842a7641f598d34c3cd847 (patch)
tree96ee1f5b3c40095e4e923fc763de0663ee6a01aa /src/win/native/ui_application.cpp
parentf2aa96fba0b72eeeadf5160ea5df2c8143ec8aa0 (diff)
downloadcru-9110574bb51e9e2959842a7641f598d34c3cd847.tar.gz
cru-9110574bb51e9e2959842a7641f598d34c3cd847.tar.bz2
cru-9110574bb51e9e2959842a7641f598d34c3cd847.zip
...
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;