<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/113315>113315</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
lldb connection lost when using popen
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Hexlord
</td>
</tr>
</table>
<pre>
This code has 100% repro for connection lost with lldb that prevents debugging e.g. a game that uses popen to invoke shader compilation in real time.
Tested on ubuntu 6.8.0-45-generic with lldb 17.0.6 and lldb 18.1.3
```c++
#include <memory>
#include <thread>
#include <vector>
void thread_func() {
for(auto i = 0; i < 100; ++i) {
auto pipe = popen("7z", "r");
pclose(pipe);
std::this_thread::sleep_for(std::chrono::milliseconds(100));
}
}
int main() {
std::vector<std::thread> threads;
for(auto i = 0; i < 10; ++i) {
threads.emplace_back(std::thread(thread_func));
}
for(auto &thread : threads) {
thread.join();
}
return 0;
}
```
[lldb.log](https://github.com/user-attachments/files/17477143/lldb.log)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8VM2SozgMfhrlogoFNr8HDp3OpvYB5t5lbAU8Y2zKNtmdffotfpLuzkxPijIKkj5JnyyJEHRviVooTlCcD2KOg_Pt3_SvcV4dOqd-tt8GHVA6RTiIgFmaAivQ0-QdXp1H6awlGbWzaFyI-I-OAxqjOoyDiDh5upGNARV1c99r2yMlfYICezHSZjMHCji5iSxGh9re3A_CMAhFC_w4aSNWfG3RkzAY9UgJpGdIX75RiKTQWZy72cYZy6RO0mNeHHuy5LX8kE9WJWlSorBq_18nWcI3nP0s0-2RwE7Ls31lXFtpZkUI_HWk0fmfwP_6nTIOnoT6QnkjGZ1_V67nzWmFm9vbdbYSWA2sQaj24Ii40AysFvNCDgI_Ywr8tIqvaz_4Cbd89S-uy291nPREq-_K8xqFVf8BY8BeERjzq9gAf3KepHGBgNULwCeDEBXwF-AvcdDh7V758iEYoulty_phJQfvrNvkURujA0lnVQBWr3eq-QQO1Xln6SGsp7YRR6HtM03vST8C3ul-_ZDo3p2d8PAe788Uf8nwjpPQOBkh6a0T8sfHoveIrP7U4eaZ6EeRT90GVm6OCPwR7Lc93nTJd3en5mt8T3H2di3wmeL79f80E8VpmZbEuB6KM7B6iHEKS3nsAuzS6zjMXSLdCOwyB_JHEaOQw7gMPbDLVRta3lmVV1WWc2CXBxxrDqrlquGNOFCbVawp07zMs8PQkixER_VV8CuXRVOwXFzLTokyl1LUXXnQLUtZnqWMZTzP0ywp8zyvGi5LqTg1OUGe0ii0SYy5jYnz_UGHMFObZZxnxcGIjky47z3fLlbHbu4D5KnRIYZ3v6ijoXZdGb8su4EszmHZautcHWZv2j8QtGDur-Pk3XeSEdhlTWwlacvt1rL_AwAA___diKD-">