summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAndrey Lihatskiy <118752495+marchcat@users.noreply.github.com>2025-09-15 18:24:21 +0300
committerGitHub <noreply@github.com>2025-09-15 18:24:21 +0300
commitf64a41f09e971e1305aa51e6a8220a31e479cfbc (patch)
tree5cac2147c45d8c26403b6556460192ce564ec2dd /indra
parent3b3c85d1f378fdc83c7f613d5ee269b5db0db125 (diff)
LLLeap: handle partial lines in stderr (#4678)
Diffstat (limited to 'indra')
-rw-r--r--indra/llcommon/llleap.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/indra/llcommon/llleap.cpp b/indra/llcommon/llleap.cpp
index 662a2511cd..ada6b9519e 100644
--- a/indra/llcommon/llleap.cpp
+++ b/indra/llcommon/llleap.cpp
@@ -188,6 +188,17 @@ public:
<< childout.peek(0, peeklen) << "..." << LL_ENDL;
}
+ // Handle any remaining stderr data (partial lines) the same way as we do
+ // for stdout: log it.
+ LLProcess::ReadPipe& childerr(mChild->getReadPipe(LLProcess::STDERR));
+ if (childerr.size())
+ {
+ LLProcess::ReadPipe::size_type
+ peeklen((std::min)(LLProcess::ReadPipe::size_type(50), childerr.size()));
+ LL_WARNS("LLLeap") << "Final stderr " << childerr.size() << " bytes: "
+ << childerr.peek(0, peeklen) << "..." << LL_ENDL;
+ }
+
// Kill this instance. MUST BE LAST before return!
delete this;
return false;