From: Davide Beatrici git@davidebeatrici.dev
--- dlls/mmdevapi/main.c | 1 + dlls/mmdevapi/mmdevapi_private.h | 1 + 2 files changed, 2 insertions(+)
diff --git a/dlls/mmdevapi/main.c b/dlls/mmdevapi/main.c index 43b5921dcc5..d5ed3a653d4 100644 --- a/dlls/mmdevapi/main.c +++ b/dlls/mmdevapi/main.c @@ -98,6 +98,7 @@ static BOOL load_driver(const WCHAR *name, DriverFuncs *driver)
#define LDFC(n) do { driver->p##n = (void*)GetProcAddress(driver->module, #n);\ if(!driver->p##n) { goto fail; } } while(0) + LDFC(get_device_guid); LDFC(get_device_name_from_guid); LDFC(GetEndpointIDs); #undef LDFC diff --git a/dlls/mmdevapi/mmdevapi_private.h b/dlls/mmdevapi/mmdevapi_private.h index f8bf7d3a440..c703ef2517b 100644 --- a/dlls/mmdevapi/mmdevapi_private.h +++ b/dlls/mmdevapi/mmdevapi_private.h @@ -42,6 +42,7 @@ typedef struct _DriverFuncs { * valid. See enum _DriverPriority. */ int priority;
+ void (WINAPI *pget_device_guid)(EDataFlow flow, const char *name, GUID *guid); BOOL (WINAPI *pget_device_name_from_guid)(GUID *guid, char **name, EDataFlow *flow); /* ids gets an array of human-friendly endpoint names * keys gets an array of driver-specific stuff that is used