diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index 44d66dbec..f5216676d 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -70,7 +70,7 @@ typedef struct _audin_server * @return 0 on success, otherwise a Win32 error code */ static UINT audin_server_select_format(audin_server_context* context, - int client_format_index) + size_t client_format_index) { audin_server* audin = (audin_server*) context; @@ -81,7 +81,7 @@ static UINT audin_server_select_format(audin_server_context* context, return ERROR_INVALID_DATA; } - context->selected_client_format = client_format_index; + context->selected_client_format = (SSIZE_T)client_format_index; if (!freerdp_dsp_context_reset(audin->dsp_context, &audin->context.client_formats[client_format_index])) diff --git a/include/freerdp/server/audin.h b/include/freerdp/server/audin.h index ac49551f9..ade14abfd 100644 --- a/include/freerdp/server/audin.h +++ b/include/freerdp/server/audin.h @@ -28,7 +28,7 @@ typedef struct _audin_server_context audin_server_context; -typedef UINT(*psAudinServerSelectFormat)(audin_server_context* context, int client_format_index); +typedef UINT(*psAudinServerSelectFormat)(audin_server_context* context, size_t client_format_index); typedef BOOL (*psAudinServerOpen)(audin_server_context* context); typedef BOOL (*psAudinServerIsOpen)(audin_server_context* context); typedef BOOL (*psAudinServerClose)(audin_server_context* context); diff --git a/server/shadow/shadow_audin.c b/server/shadow/shadow_audin.c index 85a38afe7..7d0f144ea 100644 --- a/server/shadow/shadow_audin.c +++ b/server/shadow/shadow_audin.c @@ -60,8 +60,7 @@ static UINT AudinServerOpening(audin_server_context* context) return CHANNEL_RC_OK; } - context->SelectFormat(context, i); - return CHANNEL_RC_OK; + return IFCALLRESULT(ERROR_CALL_NOT_IMPLEMENTED, context->SelectFormat, context, i); } /** * Function description