webservices: Store the async context directly in struct receive_message.

Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Hans Leidekker 2017-12-08 15:49:37 +01:00 committed by Alexandre Julliard
parent f5ac0ced0f
commit a81671b522
1 changed files with 5 additions and 5 deletions

View File

@ -1847,7 +1847,7 @@ struct receive_message
void *value;
ULONG size;
ULONG *index;
const WS_ASYNC_CONTEXT *ctx;
WS_ASYNC_CONTEXT ctx;
};
static void receive_message_proc( struct task *task )
@ -1858,9 +1858,9 @@ static void receive_message_proc( struct task *task )
hr = receive_message( r->channel, r->msg, r->desc, r->count, r->option, r->read_option, r->heap, r->value,
r->size, r->index );
TRACE( "calling %p(%08x)\n", r->ctx->callback, hr );
r->ctx->callback( hr, WS_LONG_CALLBACK, r->ctx->callbackState );
TRACE( "%p returned\n", r->ctx->callback );
TRACE( "calling %p(%08x)\n", r->ctx.callback, hr );
r->ctx.callback( hr, WS_LONG_CALLBACK, r->ctx.callbackState );
TRACE( "%p returned\n", r->ctx.callback );
}
static HRESULT queue_receive_message( struct channel *channel, WS_MESSAGE *msg, const WS_MESSAGE_DESCRIPTION **desc,
@ -1882,7 +1882,7 @@ static HRESULT queue_receive_message( struct channel *channel, WS_MESSAGE *msg,
r->value = value;
r->size = size;
r->index = index;
r->ctx = ctx;
r->ctx = *ctx;
return queue_task( &channel->recv_q, &r->task );
}