Please sign in to comment.
Turn pause_and_exit() into pause_forever()
Summary: pthread_exit can lead to confusing crashes for us: it raises a "forced unwind", which it seems (strangely) will enter into C++ catch (...) blocks: but if you don't rethrow from one these blocks, glibc will call abort() from a function called unwind_cleanup. Our LibEventWorker has a catch block of this sort that doesn't rethrow, so calling pthread_exit below there will abort the program. (The point of this function is to just wait while another thread writes a stacktrace file, so there's no reason to exit the thread.)
- Loading branch information...
Showing with 10 additions and 11 deletions.