[Lldb-commits] [lldb] [lldb-dap] Waiting for the test binary to exit prior to dumping logs. (PR #131917)
via lldb-commits
lldb-commits at lists.llvm.org
Tue Mar 18 14:14:02 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lldb
Author: John Harrison (ashgti)
<details>
<summary>Changes</summary>
This should ensure we have the full logs prior to dumping the logs. Additionally, printing log dumps to stderr so they are adjacent to assertion failures.
---
Full diff: https://github.com/llvm/llvm-project/pull/131917.diff
1 Files Affected:
- (modified) lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py (+8-4)
``````````diff
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
index 0fea3419d9725..a9a47e281e829 100644
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
+++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
@@ -88,13 +88,13 @@ def packet_type_is(packet, packet_type):
def dump_dap_log(log_file):
- print("========= DEBUG ADAPTER PROTOCOL LOGS =========")
+ print("========= DEBUG ADAPTER PROTOCOL LOGS =========", file=sys.stderr)
if log_file is None:
- print("no log file available")
+ print("no log file available", file=sys.stderr)
else:
with open(log_file, "r") as file:
- print(file.read())
- print("========= END =========")
+ print(file.read(), file=sys.stderr)
+ print("========= END =========", file=sys.stderr)
def read_packet_thread(vs_comm, log_file):
@@ -107,6 +107,10 @@ def read_packet_thread(vs_comm, log_file):
# termination of lldb-dap and stop waiting for new packets.
done = not vs_comm.handle_recv_packet(packet)
finally:
+ # Wait for the process to fully exit before dumping the log file to
+ # ensure we have the entire log contents.
+ if vs_comm.process is not None:
+ vs_comm.process.wait()
dump_dap_log(log_file)
``````````
</details>
https://github.com/llvm/llvm-project/pull/131917
More information about the lldb-commits
mailing list