mgorny created this revision.
mgorny added reviewers: labath, emaste, krytarowski.
Herald added a subscriber: arichardson.
mgorny requested review of this revision.
Use realpath() when spawning the executable create_after_attach
to workaround a FreeBSD plugin (and possibly others) problem.
If the executable is started via a path containing a symlink, it is
added to the module list twice -- via the real and apparent path.
This in turn cases the requested breakpoint to resolve twice.
Since the problem is non-trivial to fix and the purpose of this test
is not to verify that image list does not contain duplicates, let's
apply a trivial workaround to make it pass.
https://reviews.llvm.org/D97230
Files:
lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
Index:
lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
===================================================================
---
lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
+++
lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
@@ -25,7 +25,6 @@
# Occasionally hangs on Windows, may be same as other issues.
@skipIfWindows
@skipIfiOSSimulator
- @expectedFailureAll(oslist=["freebsd"], bugnumber="llvm.org/pr48376")
@expectedFailureNetBSD
def test_create_after_attach(self):
"""Test thread creation after process attach."""
@@ -33,7 +32,8 @@
exe = self.getBuildArtifact("a.out")
# Spawn a new process
- popen = self.spawnSubprocess(exe)
+ # use realpath to workaround llvm.org/pr48376
+ popen = self.spawnSubprocess(os.path.realpath(exe))
pid = popen.pid
# Attach to the spawned process
Index: lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
===================================================================
--- lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
+++ lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py
@@ -25,7 +25,6 @@
# Occasionally hangs on Windows, may be same as other issues.
@skipIfWindows
@skipIfiOSSimulator
- @expectedFailureAll(oslist=["freebsd"], bugnumber="llvm.org/pr48376")
@expectedFailureNetBSD
def test_create_after_attach(self):
"""Test thread creation after process attach."""
@@ -33,7 +32,8 @@
exe = self.getBuildArtifact("a.out")
# Spawn a new process
- popen = self.spawnSubprocess(exe)
+ # use realpath to workaround llvm.org/pr48376
+ popen = self.spawnSubprocess(os.path.realpath(exe))
pid = popen.pid
# Attach to the spawned process
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits