summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2025-08-15 06:14:20 +0800
committerErik Kundiman <erik@megapahit.org>2025-08-15 06:14:20 +0800
commit6826fd3eb2607b334017f1312e7cac945cae2907 (patch)
treedb5a0f6f415b652599a9c36b803db41dac970bfe
parent055fe5f69edf4c51c3d4cf9794148b167ce847ab (diff)
parent23083286601150854f1c4a10e92699e7783cb224 (diff)
Merge tag 'Second_Life_Release#23083286-2025.06' into 2025.06
-rw-r--r--indra/llwindow/llwindowwin32.cpp9
-rw-r--r--indra/newview/lllogchat.cpp12
2 files changed, 13 insertions, 8 deletions
diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp
index 2656f21def..e4ab73563b 100644
--- a/indra/llwindow/llwindowwin32.cpp
+++ b/indra/llwindow/llwindowwin32.cpp
@@ -1002,7 +1002,7 @@ void LLWindowWin32::close()
// Restore gamma to the system values.
restoreGamma();
- LL_DEBUGS("Window") << "Destroying Window" << LL_ENDL;
+ LL_INFOS("Window") << "Destroying Window Thread" << LL_ENDL;
if (sWindowHandleForMessageBox == mWindowHandle)
{
@@ -4893,7 +4893,7 @@ bool LLWindowWin32::LLWindowWin32Thread::wakeAndDestroy()
{
if (mQueue->isClosed())
{
- LL_WARNS() << "Tried to close Queue. Win32 thread Queue already closed." << LL_ENDL;
+ LL_WARNS("Window") << "Tried to close Queue. Win32 thread Queue already closed." << LL_ENDL;
return false;
}
@@ -4902,6 +4902,11 @@ bool LLWindowWin32::LLWindowWin32Thread::wakeAndDestroy()
{
ShowWindow(mWindowHandleThrd, SW_HIDE);
}
+ else
+ {
+ LL_WARNS("Window") << "Tried to hide window, but Win32 window handle is NULL." << LL_ENDL;
+ return false;
+ }
mGLReady = false;
diff --git a/indra/newview/lllogchat.cpp b/indra/newview/lllogchat.cpp
index 9034678782..999f431bd6 100644
--- a/indra/newview/lllogchat.cpp
+++ b/indra/newview/lllogchat.cpp
@@ -452,8 +452,8 @@ void LLLogChat::loadChatHistory(const std::string& file_name, std::list<LLSD>& m
}
// If we got here, we managed to stat the file.
- // Open the file to read
- LLFILE* fptr = LLFile::fopen(log_file_name, "r"); /*Flawfinder: ignore*/
+ // Open the file to read in binary mode to prevent interpreting other characters as EOF
+ LLFILE* fptr = LLFile::fopen(log_file_name, "rb"); /*Flawfinder: ignore*/
if (!fptr)
{ // Ok, this is strange but not really tragic in the big picture of things
LL_WARNS("ChatHistory") << "Unable to read file " << log_file_name << " after stat was successful" << LL_ENDL;
@@ -1183,7 +1183,7 @@ void LLLoadHistoryThread::loadHistory(const std::string& file_name, std::list<LL
}
bool load_all_history = load_params.has("load_all_history") ? load_params["load_all_history"].asBoolean() : false;
- LLFILE* fptr = LLFile::fopen(LLLogChat::makeLogFileName(file_name), "r");/*Flawfinder: ignore*/
+ LLFILE* fptr = LLFile::fopen(LLLogChat::makeLogFileName(file_name), "rb");/*Flawfinder: ignore*/
if (!fptr)
{
@@ -1192,17 +1192,17 @@ void LLLoadHistoryThread::loadHistory(const std::string& file_name, std::list<LL
{
std::string old_name(file_name);
old_name.erase(old_name.size() - GROUP_CHAT_SUFFIX.size());
- fptr = LLFile::fopen(LLLogChat::makeLogFileName(old_name), "r");
+ fptr = LLFile::fopen(LLLogChat::makeLogFileName(old_name), "rb");
if (fptr)
{
fclose(fptr);
LLFile::copy(LLLogChat::makeLogFileName(old_name), LLLogChat::makeLogFileName(file_name));
}
- fptr = LLFile::fopen(LLLogChat::makeLogFileName(file_name), "r");
+ fptr = LLFile::fopen(LLLogChat::makeLogFileName(file_name), "rb");
}
if (!fptr)
{
- fptr = LLFile::fopen(LLLogChat::oldLogFileName(file_name), "r");/*Flawfinder: ignore*/
+ fptr = LLFile::fopen(LLLogChat::oldLogFileName(file_name), "rb");/*Flawfinder: ignore*/
if (!fptr)
{
mNewLoad = false;