From: Rémi Bernon <rbernon@codeweavers.com> --- server/queue.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/server/queue.c b/server/queue.c index 49c7c8d6dc9..bbefd31a08e 100644 --- a/server/queue.c +++ b/server/queue.c @@ -388,6 +388,9 @@ static void assign_thread_input( struct msg_queue *queue, struct thread_input *n new_shared->cursor_count += queue->cursor_count; old_shared->cursor_count -= queue->cursor_count; + + memset( (void *)new_shared->keystate, 0, sizeof(new_shared->keystate) ); + new_shared->keystate_serial = 1; } SHARED_WRITE_END; } @@ -1400,13 +1403,6 @@ void attach_thread_input( struct msg_queue *queue_from, struct msg_queue *queue_ assign_thread_input( queue_from, input ); - SHARED_WRITE_BEGIN( input->shared, input_shm_t ) - { - memset( (void *)shared->keystate, 0, sizeof(shared->keystate) ); - shared->keystate_serial = 1; - } - SHARED_WRITE_END; - release_object( input ); } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/11670