From 5a1ca24fa9378c57de16b6443e4e9dde7799b6cb Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Date: Tue, 28 Apr 2026 02:36:56 +0300
Subject: #5726 Crash initing in-viewer console
---
indra/llui/llconsole.cpp | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/indra/llui/llconsole.cpp b/indra/llui/llconsole.cpp
index 91e6f281da..ca512a9883 100644
--- a/indra/llui/llconsole.cpp
+++ b/indra/llui/llconsole.cpp
@@ -67,6 +67,10 @@ LLConsole::LLConsole(const LLConsole::Params& p)
{
setFontSize(p.font_size_index);
}
+ if (mFont == nullptr)
+ {
+ setFontSize(0); // sans-serif
+ }
mFadeTime = mLinePersistTime - FADE_DURATION;
setMaxLines(LLUI::getInstance()->mSettingGroups["config"]->getS32("ConsoleMaxLines"));
}
@@ -79,6 +83,13 @@ void LLConsole::setLinePersistTime(F32 seconds)
void LLConsole::reshape(S32 width, S32 height, bool called_from_parent)
{
+ if (mFont == nullptr)
+ {
+ // not initialized yet
+ LL_WARNS() << "LLConsole::reshape called before font is set" << LL_ENDL;
+ return;
+ }
+
S32 new_width = llmax(50, llmin(getRect().getWidth(), width));
S32 new_height = llmax(mFont->getLineHeight() + 15, llmin(getRect().getHeight(), height));
--
cgit v1.3
From fd4533261e46c080591b06cec030c464e5fe9a90 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Date: Thu, 30 Apr 2026 01:39:30 +0300
Subject: #5084 Improve watchdog's behavior #2
---
indra/llcommon/llapp.h | 2 +-
indra/llcommon/llwatchdog.cpp | 9 ++++++---
indra/newview/llappviewerwin32.cpp | 12 ++++++------
indra/newview/llappviewerwin32.h | 2 +-
4 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/indra/llcommon/llapp.h b/indra/llcommon/llapp.h
index fef7dc80b3..3a855bc480 100644
--- a/indra/llcommon/llapp.h
+++ b/indra/llcommon/llapp.h
@@ -285,7 +285,7 @@ public:
#ifdef LL_WINDOWS
virtual bool reportCrashToBugsplat(void* pExcepInfo /*EXCEPTION_POINTERS*/) { return false; }
- virtual bool reportCustomToBugsplat(const std::string& desription) { return false; }
+ virtual bool reportCustomToBugsplat(const std::string& description) { return false; }
#endif
public:
diff --git a/indra/llcommon/llwatchdog.cpp b/indra/llcommon/llwatchdog.cpp
index 1622aeb180..66b565c763 100644
--- a/indra/llcommon/llwatchdog.cpp
+++ b/indra/llcommon/llwatchdog.cpp
@@ -191,6 +191,7 @@ void LLWatchdog::remove(LLWatchdogEntry* e)
{
lockThread();
mSuspects.erase(e);
+ mFrozeList.erase(e);
unlockThread();
}
@@ -284,8 +285,9 @@ void LLWatchdog::run()
// Sets watchdog marker file
mCreateMarkerFnc(false);
// If it's mainloop and it somehow recovers, it will re-add itself
- mSuspects.erase(*result);
- mFrozeList.insert(*result);
+ LLWatchdogEntry* froze_entry = *result;
+ mSuspects.erase(result);
+ mFrozeList.insert(froze_entry);
LL_WARNS() << description << LL_ENDL;
}
else
@@ -307,8 +309,9 @@ void LLWatchdog::run()
mCreateMarkerFnc(false);
// Already reported, don't report again.
// If it's mainloop and it somehow recovers, it will re-add itself
+ LLWatchdogEntry* froze_entry = *result;
mSuspects.erase(result);
- mFrozeList.insert(*result);
+ mFrozeList.insert(froze_entry);
}
}
}
diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp
index 6b26127925..2e4e9e29d5 100644
--- a/indra/newview/llappviewerwin32.cpp
+++ b/indra/newview/llappviewerwin32.cpp
@@ -119,7 +119,7 @@ namespace
// MiniDmpSender pointer. As things stand, though, we must define an
// actual function and store the pointer statically.
static MiniDmpSender *sBugSplatSender = nullptr;
- static std::string sBugsplatDesriptionField;
+ static std::string sBugsplatDescriptionField;
bool bugsplatSendLog(UINT nCode, LPVOID lpVal1, LPVOID lpVal2)
{
@@ -156,15 +156,15 @@ namespace
WCSTR(gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, "settings_per_account.xml")));
}
- if (!sBugsplatDesriptionField.empty())
+ if (!sBugsplatDescriptionField.empty())
{
// Can be set by watchdog or other code that detects a problem
// and wants to add some context to the crash report.
// Will be visible in the BugSplat web UI.
- sBugSplatSender->setDefaultUserDescription(WCSTR(LLError::getFatalMessage()));
- // This type of crash is not nessesarily a crash, or final.
+ sBugSplatSender->setDefaultUserDescription(WCSTR(sBugsplatDescriptionField));
+ // This type of crash is not necessarily a crash, or final.
// Prepare for the next one.
- sBugsplatDesriptionField.clear();
+ sBugsplatDescriptionField.clear();
}
else
{
@@ -878,7 +878,7 @@ bool LLAppViewerWin32::reportCustomToBugsplat(const std::string &description)
#if defined(LL_BUGSPLAT)
if (sBugSplatSender)
{
- sBugsplatDesriptionField = description;
+ sBugsplatDescriptionField = description;
__try
{
diff --git a/indra/newview/llappviewerwin32.h b/indra/newview/llappviewerwin32.h
index b31fa49cb2..53177f7f95 100644
--- a/indra/newview/llappviewerwin32.h
+++ b/indra/newview/llappviewerwin32.h
@@ -44,7 +44,7 @@ public:
bool cleanup() override;
bool reportCrashToBugsplat(void* pExcepInfo) override;
- bool reportCustomToBugsplat(const std::string& desription) override;
+ bool reportCustomToBugsplat(const std::string& description) override;
protected:
bool initWindow() override; // Override to initialize the viewer's window.
--
cgit v1.3
From c8797d9297cf070f7793f55d961eec2cdb3a494a Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Date: Tue, 5 May 2026 01:23:46 +0300
Subject: #5759 The fonts going bold
---
indra/newview/skins/default/xui/en/fonts.xml | 8 ++++----
indra/newview/skins/default/xui/ja/fonts.xml | 10 +++++-----
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/indra/newview/skins/default/xui/en/fonts.xml b/indra/newview/skins/default/xui/en/fonts.xml
index 3c6e100541..1ad01ee120 100644
--- a/indra/newview/skins/default/xui/en/fonts.xml
+++ b/indra/newview/skins/default/xui/en/fonts.xml
@@ -37,7 +37,7 @@
- InterVariableFont.ttf
+ InterVariableFont.ttf
DejaVuSans-Bold.ttf
arialbd.ttf
@@ -64,7 +64,7 @@
name="SansSerif"
comment="Name of bold sans-serif font"
font_style="BOLD">
- InterVariableFont.ttf
+ InterVariableFont.ttf
DejaVuSans-Bold.ttf
@@ -80,7 +80,7 @@
name="SansSerif"
comment="Name of bold italic sans-serif font"
font_style="BOLD|ITALIC">
- InterItalicVariableFont.ttf
+ InterItalicVariableFont.ttf
DejaVuSans-BoldOblique.ttf
@@ -135,7 +135,7 @@
name="Helvetica"
comment="Name of Helvetica font (bold)"
font_style="BOLD">
- InterVariableFont.ttf
+ InterVariableFont.ttf
DejaVuSans-Bold.ttf
arialbd.ttf
diff --git a/indra/newview/skins/default/xui/ja/fonts.xml b/indra/newview/skins/default/xui/ja/fonts.xml
index 06922d2b02..7abb3593b6 100644
--- a/indra/newview/skins/default/xui/ja/fonts.xml
+++ b/indra/newview/skins/default/xui/ja/fonts.xml
@@ -80,7 +80,7 @@
NotoSansCJKjp-Bold.otf
- InterVariableFont.ttf
+ InterVariableFont.ttf
YuGothB.ttc
@@ -115,13 +115,13 @@
- InterVariableFont.ttf
+ InterVariableFont.ttf
InterItalicVariableFont.ttf
- InterItalicVariableFont.ttf
+ InterItalicVariableFont.ttf
@@ -163,7 +163,7 @@
- InterVariableFont.ttf
+ InterVariableFont.ttf
arialbd.ttf
@@ -189,7 +189,7 @@
- InterItalicVariableFont.ttf
+ InterItalicVariableFont.ttf
arialbi.ttf
--
cgit v1.3
From b44809f740d307615526060e7b57e7705c292347 Mon Sep 17 00:00:00 2001
From: Maxim Nikolenko
Date: Tue, 5 May 2026 16:45:27 +0300
Subject: #5755 fix for notifications layout
---
indra/newview/app_settings/settings.xml | 11 ++++++++
indra/newview/lltoastnotifypanel.cpp | 46 +++++++++++++++++++--------------
indra/newview/lltoastnotifypanel.h | 2 ++
3 files changed, 40 insertions(+), 19 deletions(-)
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 7844e07d7c..dbc16ef47e 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -5887,6 +5887,17 @@
If required width will be less then this one, a button will be reshaped to default size , otherwise to required
Change of this parameter will affect the layout of buttons in notification toast.
+ Persist
+ 1
+ Type
+ S32
+ Value
+ 90
+
+ ScriptToastButtonWidth
+