Skip to content

Commit dc88020

Browse files
committed
Improve crash detection: Add XIO error and wait for log flush
Added detection for more crash signatures: - XIO fatal errors (X11 display problems) - "terminate called without an active exception" (C++ crashes) - Added 2-second sleep after timeout to let Spring flush logs This catches crashes that happen as Spring shuts down after the timeout.
1 parent f16045b commit dc88020

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

.github/workflows/smoke-test.yml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,9 @@ jobs:
162162
timeout 10s xvfb-run -a -s "-screen 0 1024x768x24" \
163163
./spring --write-dir $(pwd)/test-data script.txt || EXIT_CODE=$?
164164
165+
# Wait a moment for Spring to finish writing logs
166+
sleep 2
167+
165168
echo ""
166169
echo "=== Exit Code Analysis ==="
167170
echo "Spring exit code: ${EXIT_CODE:-0}"
@@ -181,9 +184,12 @@ jobs:
181184
exit 1
182185
fi
183186
184-
# Check for crash in infolog
185-
if grep -q "CrashHandler.*Error.*Aborted\|CrashHandler.*Error.*Segmentation" test-data/infolog.txt; then
186-
echo "✗ FAIL: Spring crashed (found crash in infolog)"
187+
# Check for crash signatures in infolog
188+
if grep -q "CrashHandler.*Error.*Aborted\|CrashHandler.*Error.*Segmentation\|XIO.*fatal.*error\|terminate called without an active exception" test-data/infolog.txt; then
189+
echo "✗ FAIL: Spring crashed (found crash signature in infolog)"
190+
echo ""
191+
echo "=== Crash signatures found ==="
192+
grep -E "CrashHandler.*Error|XIO.*fatal|terminate called" test-data/infolog.txt || true
187193
echo ""
188194
echo "=== Last 100 lines of infolog.txt ==="
189195
tail -100 test-data/infolog.txt

0 commit comments

Comments
 (0)