[Lldb-commits] [PATCH] Fix on Linux for ReadThread lingering after inferior exits
Greg Clayton
gclayton at apple.com
Mon Aug 18 16:45:11 PDT 2014
You might need change:
if (error.GetError() == EIO)
to be:
if (error.GetType() == eErrorTypePOSIX && error.GetError() == EIO)
Other than that, it looks good.
> On Aug 13, 2014, at 1:47 PM, Alex Pepper <apepper at blueshiftinc.com> wrote:
>
> This patch handles the case where the inferior process exits but leaves the ReadThread in a continuous loop reading from the communication pipe. On MacOSX, the ReadThread exits when it receives a 0 return value from the read due to EOF. On Linux the read returns -1 and sets errno to EIO error, this does not currently cause the thread to shutdown so it continues to read from the comm. In Communication::ReadThread I added a handler for eConnectionStatusError to disconnect and shutdown the thread.
>
> We ran this through the full test suite on Ubuntu 14.04 x86_64 and MacOSX 10.9.4 with Xcode 6 Beta 5 with no new test failures.
>
> Let me know if there is a reason we shouldn't be handling the eConnectionStatusError in this way.
>
> Thanks,
>
> Alex
> <apepper_connectstatuserror_rev1.diff>_______________________________________________
> lldb-commits mailing list
> lldb-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
More information about the lldb-commits
mailing list