diff options
| author | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-04-21 22:50:55 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-21 22:50:55 +0300 |
| commit | 638c7f7bea1a1d345980fa385a36201f5b6cc64e (patch) | |
| tree | caab5630c16dff02794ad816d06e9c788f5870e3 /indra/newview/llvelopack.cpp | |
| parent | 4d400489662fcab5d255629d14a7a64385a89893 (diff) | |
#5629 Velopack allows uninstall while the viewer is running (#5662)
Velopack's uninstall can't be canceled, so instead it now checks for presense of a running window, makes sure window matches velopack's path, then sends a shutdown message. Window gets the message, verifies path, initiates shutdown.
Diffstat (limited to 'indra/newview/llvelopack.cpp')
| -rw-r--r-- | indra/newview/llvelopack.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/newview/llvelopack.cpp b/indra/newview/llvelopack.cpp index 8975f7d369..d34d43cc48 100644 --- a/indra/newview/llvelopack.cpp +++ b/indra/newview/llvelopack.cpp @@ -43,6 +43,7 @@ #include "Velopack.h" #if LL_WINDOWS +#include "llappviewerwin32.h" #include <windows.h> #include <shlobj.h> #include <shobjidl.h> @@ -666,8 +667,12 @@ static void on_before_uninstall(void* user_data, const char* app_version) unregister_protocol_handler(PROTOCOL_SECONDLIFE); unregister_protocol_handler(PROTOCOL_GRID_INFO); - unregister_uninstall_info(); remove_shortcuts(app_name); + + std::wstring install_dir = get_install_dir(); + LLAppViewerWin32::sendShutdownToOtherInstances(install_dir); + + unregister_uninstall_info(); } static void on_log_message(void* user_data, const char* level, const char* message) |
