From 454d5b48715772889db12d142486e75a3a4dfed3 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Wed, 26 Feb 2025 15:58:18 +0200
Subject: #3591 Reprot SEH directly to bugsplat

Rethrowing SEH via std::exception results ina callstack that ends at
rethrow.
---
 indra/newview/llappviewerwin32.cpp | 4 +++-
 indra/newview/llappviewerwin32.h   | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

(limited to 'indra/newview')

diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp
index 023ec3410a..b4a2479520 100644
--- a/indra/newview/llappviewerwin32.cpp
+++ b/indra/newview/llappviewerwin32.cpp
@@ -804,14 +804,16 @@ bool LLAppViewerWin32::cleanup()
     return result;
 }
 
-void LLAppViewerWin32::reportCrashToBugsplat(void* pExcepInfo)
+bool LLAppViewerWin32::reportCrashToBugsplat(void* pExcepInfo)
 {
 #if defined(LL_BUGSPLAT)
     if (sBugSplatSender)
     {
         sBugSplatSender->createReport((EXCEPTION_POINTERS*)pExcepInfo);
+        return true;
     }
 #endif // LL_BUGSPLAT
+    return false;
 }
 
 void LLAppViewerWin32::initLoggingAndGetLastDuration()
diff --git a/indra/newview/llappviewerwin32.h b/indra/newview/llappviewerwin32.h
index 2242c95b06..250e72edf3 100644
--- a/indra/newview/llappviewerwin32.h
+++ b/indra/newview/llappviewerwin32.h
@@ -43,7 +43,7 @@ public:
     bool init() override; // Override to do application initialization
     bool cleanup() override;
 
-    void reportCrashToBugsplat(void* pExcepInfo) override;
+    bool reportCrashToBugsplat(void* pExcepInfo) override;
 
 protected:
     void initLoggingAndGetLastDuration() override; // Override to clean stack_trace info.
-- 
cgit v1.2.3