Commit 41758566 authored by Vincent Povirk's avatar Vincent Povirk Committed by Alexandre Julliard

server: Clear the queue's QS_SMRESULT bit when sending a new message.

parent 2c984fc8
......@@ -7580,7 +7580,7 @@ static LRESULT WINAPI smresult_wndproc(HWND hwnd, UINT msg, WPARAM wparam, LPARA
/* Send another message while we have a reply queued for the current one. */
res = SendMessageA(data->thread_hwnd, WM_APP+2, 0, lparam);
todo_wine ok(res == 0x449b0190, "unexpected result %lx\n", res);
ok(res == 0x449b0190, "unexpected result %lx\n", res);
return 0;
}
......
......@@ -681,7 +681,11 @@ static struct message_result *alloc_message_result( struct msg_queue *send_queue
result->callback_msg = callback_msg;
list_add_head( &send_queue->callback_result, &result->sender_entry );
}
else if (send_queue) list_add_head( &send_queue->send_result, &result->sender_entry );
else if (send_queue)
{
list_add_head( &send_queue->send_result, &result->sender_entry );
clear_queue_bits( send_queue, QS_SMRESULT );
}
if (timeout != TIMEOUT_INFINITE)
result->timeout = add_timeout_user( timeout, result_timeout, result );
......@@ -2502,7 +2506,8 @@ DECL_HANDLER(get_message_reply)
else
{
result = LIST_ENTRY( entry, struct message_result, sender_entry );
if (!result->replied) clear_queue_bits( queue, QS_SMRESULT );
if (result->replied) set_queue_bits( queue, QS_SMRESULT );
else clear_queue_bits( queue, QS_SMRESULT );
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment