Commit 53baa445 authored by Davide Beatrici's avatar Davide Beatrici Committed by Alexandre Julliard

wineoss: Use GetModuleFileName() instead of hardcoded module filename for registry key.

parent f58ef5a9
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#define COBJMACROS #define COBJMACROS
#include <stdarg.h> #include <stdarg.h>
#include <wchar.h>
#include "windef.h" #include "windef.h"
#include "winbase.h" #include "winbase.h"
...@@ -124,9 +125,7 @@ typedef struct _OSSDevice { ...@@ -124,9 +125,7 @@ typedef struct _OSSDevice {
static struct list g_devices = LIST_INIT(g_devices); static struct list g_devices = LIST_INIT(g_devices);
static const WCHAR drv_key_devicesW[] = {'S','o','f','t','w','a','r','e','\\', static WCHAR drv_key_devicesW[256];
'W','i','n','e','\\','D','r','i','v','e','r','s','\\',
'w','i','n','e','o','s','s','.','d','r','v','\\','d','e','v','i','c','e','s',0};
static const WCHAR guidW[] = {'g','u','i','d',0}; static const WCHAR guidW[] = {'g','u','i','d',0};
static CRITICAL_SECTION g_sessions_lock; static CRITICAL_SECTION g_sessions_lock;
...@@ -207,9 +206,22 @@ BOOL WINAPI DllMain(HINSTANCE dll, DWORD reason, void *reserved) ...@@ -207,9 +206,22 @@ BOOL WINAPI DllMain(HINSTANCE dll, DWORD reason, void *reserved)
switch (reason) switch (reason)
{ {
case DLL_PROCESS_ATTACH: case DLL_PROCESS_ATTACH:
{
WCHAR buf[MAX_PATH];
WCHAR *filename;
if(__wine_init_unix_call()) return FALSE; if(__wine_init_unix_call()) return FALSE;
break;
GetModuleFileNameW(dll, buf, ARRAY_SIZE(buf));
filename = wcsrchr(buf, '\\');
filename = filename ? filename + 1 : buf;
swprintf(drv_key_devicesW, ARRAY_SIZE(drv_key_devicesW),
L"Software\\Wine\\Drivers\\%s\\devices", filename);
break;
}
case DLL_PROCESS_DETACH: case DLL_PROCESS_DETACH:
if (!reserved) if (!reserved)
{ {
......
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