gohome1984 / google-breakpad

Automatically exported from code.google.com/p/google-breakpad
0 stars 0 forks source link

Deadlock when triggering a crash in crash_greneration_app #273

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Any attempt to generate a crash deadlock the application.

This is because the crash happens while in the message loop (main thread).
That thread blocks until the thread generating the minidump (handler
thread) finishes. The handler thread, through the application callback,
tries to display some message in the dialog box. For this to happens, it
needs to send an event to the message loop, which is blocked => deadlock.

The fix is to update the UI through the work queue (see patch)

Original issue reported on code.google.com by naho...@gmail.com on 20 Aug 2008 at 4:56

Attachments:

GoogleCodeExporter commented 9 years ago
Issue 292 has been merged into this issue.

Original comment by ted.mielczarek on 3 Dec 2009 at 4:19

GoogleCodeExporter commented 9 years ago
was this patch tested?

Original comment by avia...@gmail.com on 3 Dec 2009 at 4:28

GoogleCodeExporter commented 9 years ago
It worked yes, otherwise, I wouldn't have submitted the patch.

That said, that was long ago, so a disclaimer needs applying:
1) I don't know if it still works with current source code,
2) I don't remember how safe it is (i.e. if it's the proper fix or a kludge, 
but I
think it's the former)

Just try it yourself, it's not a complicated patch ;)

Original comment by naho...@gmail.com on 3 Dec 2009 at 5:14