summaryrefslogtreecommitdiff
path: root/indra/newview/llpanellogin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpanellogin.cpp')
-rw-r--r--indra/newview/llpanellogin.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp
index ed80c8b732..0a585722f2 100644
--- a/indra/newview/llpanellogin.cpp
+++ b/indra/newview/llpanellogin.cpp
@@ -37,6 +37,9 @@
#include "llappviewer.h"
#include "llbutton.h"
+#if LL_VELOPACK
+#include "llvelopack.h"
+#endif
#include "llcheckboxctrl.h"
#include "llcommandhandler.h" // for secondlife:///app/login/
#include "llcombobox.h"
@@ -183,7 +186,7 @@ LLPanelLogin::LLPanelLogin(const LLRect &rect,
: LLPanel(),
mCallback(callback),
mCallbackData(cb_data),
- mListener(new LLPanelLoginListener(this)),
+ mListener(std::make_unique<LLPanelLoginListener>(this)),
mFirstLoginThisInstall(gSavedSettings.getBOOL("FirstLoginThisInstall")),
mUsernameLength(0),
mPasswordLength(0),
@@ -936,6 +939,19 @@ void LLPanelLogin::handleMediaEvent(LLPluginClassMedia* /*self*/, EMediaEvent ev
// static
void LLPanelLogin::onClickConnect(bool commit_fields)
{
+#if LL_VELOPACK
+ // In theory, you should never be able to get here.
+ // If there's a required update, try as you might you're not supposed to actually close the downloading update dialog.
+ // But just in case...
+ if (velopack_is_required_update_in_progress())
+ {
+ LLSD args;
+ args["VERSION"] = velopack_get_required_update_version();
+ LLNotificationsUtil::add("DownloadingUpdate", args);
+ return;
+ }
+#endif
+
if (sInstance && sInstance->mCallback)
{
if (commit_fields)