diff --git a/.github/workflows/deploy_only.yml b/.github/workflows/deploy_only.yml
index a74cb42cd1..0923484f1d 100644
--- a/.github/workflows/deploy_only.yml
+++ b/.github/workflows/deploy_only.yml
@@ -45,7 +45,7 @@ jobs:
run: pip install discord-webhook
- name: Download Build Artifacts
- uses: dawidd6/action-download-artifact@v6
+ uses: dawidd6/action-download-artifact@v7
id: download
with:
workflow: build_viewer.yml
diff --git a/.github/workflows/sign.yml b/.github/workflows/sign.yml
index eab0e71f17..6cdc719a7b 100644
--- a/.github/workflows/sign.yml
+++ b/.github/workflows/sign.yml
@@ -41,7 +41,7 @@ jobs:
setup_files: ${{ steps.get-files.outputs.setup_files }}
steps:
- name: Download Build Artifacts
- uses: dawidd6/action-download-artifact@v6
+ uses: dawidd6/action-download-artifact@v7
id: download
with:
workflow: build_viewer.yml
diff --git a/.github/workflows/tag-fs-build.yml b/.github/workflows/tag-fs-build.yml
index 574de07d2e..3a3c6a0f5c 100644
--- a/.github/workflows/tag-fs-build.yml
+++ b/.github/workflows/tag-fs-build.yml
@@ -71,7 +71,7 @@ jobs:
echo "build_run_number=${{ github.event.inputs.build_run_number }}" >> "$GITHUB_OUTPUT"
fi
- name: Download Build Artifacts
- uses: dawidd6/action-download-artifact@v6
+ uses: dawidd6/action-download-artifact@v7
id: download_build_info
with:
workflow: build_viewer.yml
diff --git a/doc/building_windows.md b/doc/building_windows.md
index 1e366b643f..f70de961ed 100644
--- a/doc/building_windows.md
+++ b/doc/building_windows.md
@@ -221,7 +221,7 @@ Available premade firestorm-specific build targets:
```
ReleaseFS (includes KDU, FMOD)
ReleaseFS_open (no KDU, no FMOD)
-RelWithDebInfo_open (no KDU, no FMOD)
+RelWithDebInfoFS_open (no KDU, no FMOD)
```
> [!TIP]
diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp
index f549b00da0..77ecc0e752 100644
--- a/indra/llwindow/llwindowwin32.cpp
+++ b/indra/llwindow/llwindowwin32.cpp
@@ -48,7 +48,7 @@
#include "llthreadsafequeue.h"
#include "stringize.h"
#include "llframetimer.h"
-
+#include "llfontgl.h" // FIRE-34906 - try a sensible default font height
// System includes
#include
#include
@@ -4126,7 +4126,18 @@ void LLWindowWin32::fillCompositionLogfont(LOGFONT *logfont)
break;
}
- logfont->lfHeight = mPreeditor->getPreeditFontSize();
+ // FIRE-34906 (BugSplat) crash when mPreEditor is NULL. (affects at least version 6.6.17->7.1.11)
+ // logfont->lfHeight = mPreeditor->getPreeditFontSize();
+ if(mPreeditor)
+ {
+ logfont->lfHeight = mPreeditor->getPreeditFontSize();
+ }
+ else
+ {
+ // In the absence of other options, use the default font height for monospace.
+ logfont->lfHeight = LLFontGL::getFontMonospace()->getLineHeight();
+ }
+ //
logfont->lfWeight = FW_NORMAL;
}
diff --git a/indra/newview/llenvironment.cpp b/indra/newview/llenvironment.cpp
index 35cc380f45..35220ea8b9 100644
--- a/indra/newview/llenvironment.cpp
+++ b/indra/newview/llenvironment.cpp
@@ -1662,7 +1662,10 @@ void LLEnvironment::updateEnvironment(LLSettingsBase::Seconds transition, bool f
if ((mCurrentEnvironment != pinstance) || forced)
{
- if (transition != TRANSITION_INSTANT)
+ // FIRE-34726 Avoid null water in startup transitions
+ // if (transition != TRANSITION_INSTANT)
+ if (transition != TRANSITION_INSTANT && mCurrentEnvironment->getWater() && mCurrentEnvironment->getSky())
+ //
{
DayInstance::ptr_t trans = std::make_shared(
mCurrentEnvironment->getSky(), mCurrentEnvironment->getWater(), pinstance, transition);
@@ -3099,7 +3102,6 @@ bool LLEnvironment::DayTransition::applyTimeDelta(const LLSettingsBase::Seconds&
void LLEnvironment::DayTransition::animate()
{
mNextInstance->animate();
-
mWater = mStartWater->buildClone();
mBlenderWater = std::make_shared(mWater, mStartWater, mNextInstance->getWater(), mTransitionTime);
mBlenderWater->setOnFinished(
@@ -3786,7 +3788,14 @@ namespace
}
LL_WARNS("PUSHENV", "ENVIRONMENT") << "Underlying environment has changed (" << env << ")! Base env is type " << base_env << LL_ENDL;
-
+ // FIRE-34726 - BugSplat EEP transition crash fix
+ if(!mBaseDayInstance->getWater() || !mBaseDayInstance->getSky())
+ {
+ LL_WARNS("PUSHENV", "ENVIRONMENT") << "Environment does not have sky or water settings! Transition skipped completely" << LL_ENDL;
+ setBaseDayInstance(nextbase);
+ return;
+ }
+ //
LLEnvironment::DayInstance::ptr_t trans = std::make_shared(std::static_pointer_cast(shared_from_this()),
mBaseDayInstance->getSky(), mBaseDayInstance->getWater(), nextbase, LLEnvironment::TRANSITION_DEFAULT);