diff --git a/dlls/winegstreamer/wg_parser.c b/dlls/winegstreamer/wg_parser.c index 2d00f4247e0..6a2da80257b 100644 --- a/dlls/winegstreamer/wg_parser.c +++ b/dlls/winegstreamer/wg_parser.c @@ -2213,7 +2213,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] = X(wg_parser_create), X(wg_parser_destroy), - X(wg_parser_connect), + X64(wg_parser_connect), X(wg_parser_disconnect), X(wg_parser_get_next_read_offset), @@ -2274,6 +2274,24 @@ C_ASSERT(ARRAYSIZE(__wine_unix_call_funcs) == unix_wg_funcs_count); typedef ULONG PTR32; +static NTSTATUS wow64_wg_parser_connect(void *args) +{ + struct + { + wg_parser_t parser; + PTR32 uri; + UINT64 file_size; + } *params32 = args; + struct wg_parser_connect_params params = + { + .parser = params32->parser, + .uri = ULongToPtr(params32->uri), + .file_size = params32->file_size, + }; + + return wg_parser_connect(¶ms); +} + static NTSTATUS wow64_wg_parser_push_data(void *args) { struct {