Commit e55c432a authored by Davide Beatrici's avatar Davide Beatrici Committed by Alexandre Julliard

wineoss: Implement main_loop in unixlib.

parent 9ad0694a
......@@ -82,6 +82,8 @@ extern const IAudioClock2Vtbl AudioClock2_Vtbl;
extern const IAudioStreamVolumeVtbl AudioStreamVolume_Vtbl;
extern const IChannelAudioVolumeVtbl ChannelAudioVolume_Vtbl;
extern HRESULT main_loop_start(void) DECLSPEC_HIDDEN;
extern struct audio_session_wrapper *session_wrapper_create(
struct audio_client *client) DECLSPEC_HIDDEN;
......@@ -575,6 +577,11 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient3 *iface,
return AUDCLNT_E_ALREADY_INITIALIZED;
}
if(FAILED(params.result = main_loop_start())){
sessions_unlock();
return params.result;
}
params.name = NULL;
params.device = This->device_name;
params.flow = This->dataflow;
......
......@@ -221,6 +221,13 @@ static void get_default_device(EDataFlow flow, char device[OSS_DEVNODE_SIZE])
return;
}
static NTSTATUS oss_main_loop(void *args)
{
struct main_loop_params *params = args;
NtSetEvent(params->event, NULL);
return STATUS_SUCCESS;
}
static NTSTATUS oss_get_endpoint_ids(void *args)
{
struct get_endpoint_ids_params *params = args;
......@@ -1684,7 +1691,7 @@ unixlib_entry_t __wine_unix_call_funcs[] =
{
oss_not_implemented,
oss_not_implemented,
oss_not_implemented,
oss_main_loop,
oss_get_endpoint_ids,
oss_create_stream,
oss_release_stream,
......@@ -1738,6 +1745,19 @@ static NTSTATUS oss_wow64_test_connect(void *args)
return STATUS_SUCCESS;
}
static NTSTATUS oss_wow64_main_loop(void *args)
{
struct
{
PTR32 event;
} *params32 = args;
struct main_loop_params params =
{
.event = ULongToHandle(params32->event)
};
return oss_main_loop(&params);
}
static NTSTATUS oss_wow64_get_endpoint_ids(void *args)
{
struct
......@@ -2108,7 +2128,7 @@ unixlib_entry_t __wine_unix_call_wow64_funcs[] =
{
oss_not_implemented,
oss_not_implemented,
oss_not_implemented,
oss_wow64_main_loop,
oss_wow64_get_endpoint_ids,
oss_wow64_create_stream,
oss_wow64_release_stream,
......
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