diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2019-12-19 18:42:17 -0500 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2020-02-04 03:33:18 -0500 |
| commit | e0c605be1d32b74b14da18cc7de4a66a4f6f3ecb (patch) | |
| tree | d35ab520b6e99bb3458f3a3c9d338766ee1a994f /src/shared/util.cpp | |
| parent | 219bd59a21430f830136927564e18dfc25421927 (diff) | |
initial implementation for updating file tree, buggy
Diffstat (limited to 'src/shared/util.cpp')
| -rw-r--r-- | src/shared/util.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/shared/util.cpp b/src/shared/util.cpp index baceddeb..302dea7d 100644 --- a/src/shared/util.cpp +++ b/src/shared/util.cpp @@ -20,6 +20,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. #include "util.h"
#include "windows_error.h"
#include "mainwindow.h"
+#include "env.h"
#include <usvfs.h>
#include <usvfs_version.h>
@@ -290,6 +291,32 @@ QString getUsvfsVersionString() }
}
+void SetThisThreadName(const QString& s)
+{
+ using SetThreadDescriptionType = HRESULT (
+ HANDLE hThread,
+ PCWSTR lpThreadDescription
+ );
+
+ static SetThreadDescriptionType* SetThreadDescription = [] {
+ SetThreadDescriptionType* p = nullptr;
+
+ env::LibraryPtr kernel32(LoadLibraryW(L"kernel32.dll"));
+ if (!kernel32) {
+ return p;
+ }
+
+ p = reinterpret_cast<SetThreadDescriptionType*>(
+ GetProcAddress(kernel32.get(), "SetThreadDescription"));
+
+ return p;
+ }();
+
+ if (SetThreadDescription) {
+ SetThreadDescription(GetCurrentThread(), s.toStdWString().c_str());
+ }
+}
+
} // namespace MOShared
|
