Eric Pouech <eric.pouech(a)orange.fr> writes:
diff --git a/server/debugger.c b/server/debugger.c index 795a24a..4458a3b 100644 --- a/server/debugger.c +++ b/server/debugger.c @@ -677,6 +677,8 @@ DECL_HANDLER(get_exception_status) if ((event = (struct debug_event *)get_handle_obj( current->process, req->handle, 0, &debug_event_ops ))) { + NTSTATUS status = STATUS_PENDING; + close_handle( current->process, req->handle ); if (event->state == EVENT_CONTINUED) { @@ -686,10 +688,10 @@ DECL_HANDLER(get_exception_status) set_reply_data( &event->context, size ); current->context = NULL; } - set_error( event->status ); + status = event->status; } - else set_error( STATUS_PENDING ); release_object( event ); + set_error( status );
Releasing an object should never change the error code. Where do you see that happening? -- Alexandre Julliard julliard(a)winehq.org