| @@ -18,12 +18,12 @@ | |||||
| #if ! (defined(JACKBRIDGE_DIRECT) || defined(JACKBRIDGE_DUMMY)) | #if ! (defined(JACKBRIDGE_DIRECT) || defined(JACKBRIDGE_DUMMY)) | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| # include <windows.h> | # include <windows.h> | ||||
| # include <pthread.h> | # include <pthread.h> | ||||
| #endif | #endif | ||||
| #if defined(CARLA_OS_WIN) && ! defined(__WINE__) | |||||
| #if defined(CARLA_OS_WIN) && ! defined(__WINE64__) | |||||
| # define JACKSYM_API __cdecl | # define JACKSYM_API __cdecl | ||||
| #else | #else | ||||
| # define JACKSYM_API | # define JACKSYM_API | ||||
| @@ -165,7 +165,7 @@ typedef int (JACKSYM_API *jacksym_remove_properties)(jack_client_t*, jack_uuid_ | |||||
| typedef int (JACKSYM_API *jacksym_remove_all_properties)(jack_client_t*); | typedef int (JACKSYM_API *jacksym_remove_all_properties)(jack_client_t*); | ||||
| typedef int (JACKSYM_API *jacksym_set_property_change_callback)(jack_client_t*, JackSymPropertyChangeCallback, void*); | typedef int (JACKSYM_API *jacksym_set_property_change_callback)(jack_client_t*, JackSymPropertyChangeCallback, void*); | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| typedef int (JACKSYM_API *jacksym_thread_creator_t)(pthread_t*, const pthread_attr_t*, void *(*)(void*), void*); | typedef int (JACKSYM_API *jacksym_thread_creator_t)(pthread_t*, const pthread_attr_t*, void *(*)(void*), void*); | ||||
| typedef void (JACKSYM_API *jacksym_set_thread_creator)(jacksym_thread_creator_t); | typedef void (JACKSYM_API *jacksym_set_thread_creator)(jacksym_thread_creator_t); | ||||
| #endif | #endif | ||||
| @@ -288,7 +288,7 @@ struct JackBridge { | |||||
| jacksym_remove_all_properties remove_all_properties_ptr; | jacksym_remove_all_properties remove_all_properties_ptr; | ||||
| jacksym_set_property_change_callback set_property_change_callback_ptr; | jacksym_set_property_change_callback set_property_change_callback_ptr; | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| jacksym_set_thread_creator set_thread_creator_ptr; | jacksym_set_thread_creator set_thread_creator_ptr; | ||||
| #endif | #endif | ||||
| @@ -383,7 +383,7 @@ struct JackBridge { | |||||
| remove_properties_ptr(nullptr), | remove_properties_ptr(nullptr), | ||||
| remove_all_properties_ptr(nullptr), | remove_all_properties_ptr(nullptr), | ||||
| set_property_change_callback_ptr(nullptr) | set_property_change_callback_ptr(nullptr) | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| , set_thread_creator_ptr(nullptr) | , set_thread_creator_ptr(nullptr) | ||||
| #endif | #endif | ||||
| { | { | ||||
| @@ -521,7 +521,7 @@ struct JackBridge { | |||||
| LIB_SYMBOL(remove_all_properties) | LIB_SYMBOL(remove_all_properties) | ||||
| LIB_SYMBOL(set_property_change_callback) | LIB_SYMBOL(set_property_change_callback) | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| LIB_SYMBOL(set_thread_creator) | LIB_SYMBOL(set_thread_creator) | ||||
| #endif | #endif | ||||
| @@ -553,7 +553,7 @@ static const JackBridge& getBridgeInstance() noexcept | |||||
| // ----------------------------------------------------------------------------- | // ----------------------------------------------------------------------------- | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| struct WineBridge { | struct WineBridge { | ||||
| void* ptr; | void* ptr; | ||||
| @@ -749,7 +749,7 @@ struct WineBridge { | |||||
| CARLA_DECLARE_NON_COPY_STRUCT(WineBridge); | CARLA_DECLARE_NON_COPY_STRUCT(WineBridge); | ||||
| }; | }; | ||||
| #endif // __WINE__ | |||||
| #endif // __WINE64__ | |||||
| // ----------------------------------------------------------------------------- | // ----------------------------------------------------------------------------- | ||||
| @@ -766,7 +766,7 @@ bool jackbridge_is_ok() noexcept | |||||
| void jackbridge_init() | void jackbridge_init() | ||||
| { | { | ||||
| #ifdef __WINE__ | |||||
| #ifdef __WINE64__ | |||||
| if (getBridgeInstance().set_thread_creator_ptr != nullptr) | if (getBridgeInstance().set_thread_creator_ptr != nullptr) | ||||
| getBridgeInstance().set_thread_creator_ptr(WineBridge::thread_creator); | getBridgeInstance().set_thread_creator_ptr(WineBridge::thread_creator); | ||||
| #endif | #endif | ||||
| @@ -933,7 +933,7 @@ bool jackbridge_set_thread_init_callback(jack_client_t* client, JackThreadInitCa | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_thread_init_callback_ptr != nullptr) | if (getBridgeInstance().set_thread_init_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_thread_init(thread_init_callback); | WineBridge::getInstance().set_thread_init(thread_init_callback); | ||||
| return (getBridgeInstance().set_thread_init_callback_ptr(client, WineBridge::thread_init, arg) == 0); | return (getBridgeInstance().set_thread_init_callback_ptr(client, WineBridge::thread_init, arg) == 0); | ||||
| # else | # else | ||||
| @@ -952,7 +952,7 @@ void jackbridge_on_shutdown(jack_client_t* client, JackShutdownCallback shutdown | |||||
| #else | #else | ||||
| if (getBridgeInstance().on_shutdown_ptr != nullptr) | if (getBridgeInstance().on_shutdown_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_shutdown(shutdown_callback); | WineBridge::getInstance().set_shutdown(shutdown_callback); | ||||
| getBridgeInstance().on_shutdown_ptr(client, WineBridge::shutdown, arg); | getBridgeInstance().on_shutdown_ptr(client, WineBridge::shutdown, arg); | ||||
| # else | # else | ||||
| @@ -970,7 +970,7 @@ void jackbridge_on_info_shutdown(jack_client_t* client, JackInfoShutdownCallback | |||||
| #else | #else | ||||
| if (getBridgeInstance().on_info_shutdown_ptr != nullptr) | if (getBridgeInstance().on_info_shutdown_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_info_shutdown(shutdown_callback); | WineBridge::getInstance().set_info_shutdown(shutdown_callback); | ||||
| getBridgeInstance().on_info_shutdown_ptr(client, WineBridge::info_shutdown, arg); | getBridgeInstance().on_info_shutdown_ptr(client, WineBridge::info_shutdown, arg); | ||||
| # else | # else | ||||
| @@ -988,7 +988,7 @@ bool jackbridge_set_process_callback(jack_client_t* client, JackProcessCallback | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_process_callback_ptr != nullptr) | if (getBridgeInstance().set_process_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_process(process_callback); | WineBridge::getInstance().set_process(process_callback); | ||||
| return (getBridgeInstance().set_process_callback_ptr(client, WineBridge::process, arg) == 0); | return (getBridgeInstance().set_process_callback_ptr(client, WineBridge::process, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1007,7 +1007,7 @@ bool jackbridge_set_freewheel_callback(jack_client_t* client, JackFreewheelCallb | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_freewheel_callback_ptr != nullptr) | if (getBridgeInstance().set_freewheel_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_freewheel(freewheel_callback); | WineBridge::getInstance().set_freewheel(freewheel_callback); | ||||
| return (getBridgeInstance().set_freewheel_callback_ptr(client, WineBridge::freewheel, arg) == 0); | return (getBridgeInstance().set_freewheel_callback_ptr(client, WineBridge::freewheel, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1026,7 +1026,7 @@ bool jackbridge_set_buffer_size_callback(jack_client_t* client, JackBufferSizeCa | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_buffer_size_callback_ptr != nullptr) | if (getBridgeInstance().set_buffer_size_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_bufsize(bufsize_callback); | WineBridge::getInstance().set_bufsize(bufsize_callback); | ||||
| return (getBridgeInstance().set_buffer_size_callback_ptr(client, WineBridge::bufsize, arg) == 0); | return (getBridgeInstance().set_buffer_size_callback_ptr(client, WineBridge::bufsize, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1045,7 +1045,7 @@ bool jackbridge_set_sample_rate_callback(jack_client_t* client, JackSampleRateCa | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_sample_rate_callback_ptr != nullptr) | if (getBridgeInstance().set_sample_rate_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_srate(srate_callback); | WineBridge::getInstance().set_srate(srate_callback); | ||||
| return (getBridgeInstance().set_sample_rate_callback_ptr(client, WineBridge::srate, arg) == 0); | return (getBridgeInstance().set_sample_rate_callback_ptr(client, WineBridge::srate, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1064,7 +1064,7 @@ bool jackbridge_set_client_registration_callback(jack_client_t* client, JackClie | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_client_registration_callback_ptr != nullptr) | if (getBridgeInstance().set_client_registration_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_client_reg(registration_callback); | WineBridge::getInstance().set_client_reg(registration_callback); | ||||
| return (getBridgeInstance().set_client_registration_callback_ptr(client, WineBridge::client_reg, arg) == 0); | return (getBridgeInstance().set_client_registration_callback_ptr(client, WineBridge::client_reg, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1083,7 +1083,7 @@ bool jackbridge_set_port_registration_callback(jack_client_t* client, JackPortRe | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_port_registration_callback_ptr != nullptr) | if (getBridgeInstance().set_port_registration_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_port_reg(registration_callback); | WineBridge::getInstance().set_port_reg(registration_callback); | ||||
| return (getBridgeInstance().set_port_registration_callback_ptr(client, WineBridge::port_reg, arg) == 0); | return (getBridgeInstance().set_port_registration_callback_ptr(client, WineBridge::port_reg, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1102,7 +1102,7 @@ bool jackbridge_set_port_rename_callback(jack_client_t* client, JackPortRenameCa | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_port_rename_callback_ptr != nullptr) | if (getBridgeInstance().set_port_rename_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_port_rename(rename_callback); | WineBridge::getInstance().set_port_rename(rename_callback); | ||||
| return (getBridgeInstance().set_port_rename_callback_ptr(client, WineBridge::port_rename, arg) == 0); | return (getBridgeInstance().set_port_rename_callback_ptr(client, WineBridge::port_rename, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1121,7 +1121,7 @@ bool jackbridge_set_port_connect_callback(jack_client_t* client, JackPortConnect | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_port_connect_callback_ptr != nullptr) | if (getBridgeInstance().set_port_connect_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_port_conn(connect_callback); | WineBridge::getInstance().set_port_conn(connect_callback); | ||||
| return (getBridgeInstance().set_port_connect_callback_ptr(client, WineBridge::port_conn, arg) == 0); | return (getBridgeInstance().set_port_connect_callback_ptr(client, WineBridge::port_conn, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1140,7 +1140,7 @@ bool jackbridge_set_graph_order_callback(jack_client_t* client, JackGraphOrderCa | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_graph_order_callback_ptr != nullptr) | if (getBridgeInstance().set_graph_order_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_graph_order(graph_callback); | WineBridge::getInstance().set_graph_order(graph_callback); | ||||
| return (getBridgeInstance().set_graph_order_callback_ptr(client, WineBridge::graph_order, arg) == 0); | return (getBridgeInstance().set_graph_order_callback_ptr(client, WineBridge::graph_order, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1159,7 +1159,7 @@ bool jackbridge_set_xrun_callback(jack_client_t* client, JackXRunCallback xrun_c | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_xrun_callback_ptr != nullptr) | if (getBridgeInstance().set_xrun_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_xrun(xrun_callback); | WineBridge::getInstance().set_xrun(xrun_callback); | ||||
| return (getBridgeInstance().set_xrun_callback_ptr(client, WineBridge::xrun, arg) == 0); | return (getBridgeInstance().set_xrun_callback_ptr(client, WineBridge::xrun, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1178,7 +1178,7 @@ bool jackbridge_set_latency_callback(jack_client_t* client, JackLatencyCallback | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_latency_callback_ptr != nullptr) | if (getBridgeInstance().set_latency_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_latency(latency_callback); | WineBridge::getInstance().set_latency(latency_callback); | ||||
| return (getBridgeInstance().set_latency_callback_ptr(client, WineBridge::latency, arg) == 0); | return (getBridgeInstance().set_latency_callback_ptr(client, WineBridge::latency, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1768,7 +1768,7 @@ bool jackbridge_set_sync_callback(jack_client_t* client, JackSyncCallback sync_c | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_sync_callback_ptr != nullptr) | if (getBridgeInstance().set_sync_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_sync(sync_callback); | WineBridge::getInstance().set_sync(sync_callback); | ||||
| return (getBridgeInstance().set_sync_callback_ptr(client, WineBridge::sync, arg) == 0); | return (getBridgeInstance().set_sync_callback_ptr(client, WineBridge::sync, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1799,7 +1799,7 @@ bool jackbridge_set_timebase_callback(jack_client_t* client, bool conditional, J | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_timebase_callback_ptr != nullptr) | if (getBridgeInstance().set_timebase_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_timebase(timebase_callback); | WineBridge::getInstance().set_timebase(timebase_callback); | ||||
| return (getBridgeInstance().set_timebase_callback_ptr(client, conditional, WineBridge::timebase, arg) == 0); | return (getBridgeInstance().set_timebase_callback_ptr(client, conditional, WineBridge::timebase, arg) == 0); | ||||
| # else | # else | ||||
| @@ -1991,7 +1991,7 @@ bool jackbridge_set_property_change_callback(jack_client_t* client, JackProperty | |||||
| #else | #else | ||||
| if (getBridgeInstance().set_property_change_callback_ptr != nullptr) | if (getBridgeInstance().set_property_change_callback_ptr != nullptr) | ||||
| { | { | ||||
| # ifdef __WINE__ | |||||
| # ifdef __WINE64__ | |||||
| WineBridge::getInstance().set_prop_change(callback); | WineBridge::getInstance().set_prop_change(callback); | ||||
| return (getBridgeInstance().set_property_change_callback_ptr(client, WineBridge::prop_change, arg) == 0); | return (getBridgeInstance().set_property_change_callback_ptr(client, WineBridge::prop_change, arg) == 0); | ||||
| # else | # else | ||||