Sebastian Lackner : server: Grab borrowed debugger reference while handling wake_up() events. ( Valgrind).
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Jun 23 12:57:40 CDT 2014
Module: wine
Branch: master
Commit: 3447567b42fc5ea7ccf80876ad68ca4afb49e291
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3447567b42fc5ea7ccf80876ad68ca4afb49e291
Author: Sebastian Lackner <sebastian at fds-team.de>
Date: Sat Jun 21 22:56:22 2014 +0200
server: Grab borrowed debugger reference while handling wake_up() events. (Valgrind).
---
server/debugger.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/server/debugger.c b/server/debugger.c
index 3315f6e..3ccec29 100644
--- a/server/debugger.c
+++ b/server/debugger.c
@@ -241,7 +241,13 @@ static void link_event( struct debug_event *event )
assert( debug_ctx );
grab_object( event );
list_add_tail( &debug_ctx->event_queue, &event->entry );
- if (!event->sender->debug_event) wake_up( &debug_ctx->obj, 0 );
+ if (!event->sender->debug_event)
+ {
+ /* grab reference since debugger could be killed while trying to wake up */
+ grab_object( debug_ctx );
+ wake_up( &debug_ctx->obj, 0 );
+ release_object( debug_ctx );
+ }
}
/* find the next event that we can send to the debugger */
More information about the wine-cvs
mailing list