mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
165 lines
4.8 KiB
Diff
165 lines
4.8 KiB
Diff
From 4df02b9d23b868cf4e481d6461715f21d1b0f7e9 Mon Sep 17 00:00:00 2001
|
|
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
|
Date: Wed, 14 Aug 2019 12:17:08 +1000
|
|
Subject: [PATCH 01/27] dsdmo: Added dll
|
|
|
|
---
|
|
configure | 2 +
|
|
configure.ac | 1 +
|
|
dlls/dsdmo/Makefile.in | 6 +++
|
|
dlls/dsdmo/dsdmo.spec | 4 ++
|
|
dlls/dsdmo/main.c | 85 ++++++++++++++++++++++++++++++++++++++++++
|
|
5 files changed, 98 insertions(+)
|
|
create mode 100644 dlls/dsdmo/Makefile.in
|
|
create mode 100644 dlls/dsdmo/dsdmo.spec
|
|
create mode 100644 dlls/dsdmo/main.c
|
|
|
|
diff --git a/configure b/configure
|
|
index 5ed6ed6c26..bea103fc37 100755
|
|
--- a/configure
|
|
+++ b/configure
|
|
@@ -1257,6 +1257,7 @@ enable_dpnlobby
|
|
enable_dpvoice
|
|
enable_dpwsockx
|
|
enable_drmclien
|
|
+enable_dsdmo
|
|
enable_dsound
|
|
enable_dsquery
|
|
enable_dssenh
|
|
@@ -20364,6 +20365,7 @@ wine_fn_config_makefile dlls/dpvoice enable_dpvoice
|
|
wine_fn_config_makefile dlls/dpvoice/tests enable_tests
|
|
wine_fn_config_makefile dlls/dpwsockx enable_dpwsockx
|
|
wine_fn_config_makefile dlls/drmclien enable_drmclien
|
|
+wine_fn_config_makefile dlls/dsdmo enable_dsdmo
|
|
wine_fn_config_makefile dlls/dsound enable_dsound
|
|
wine_fn_config_makefile dlls/dsound/tests enable_tests
|
|
wine_fn_config_makefile dlls/dsquery enable_dsquery
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 1c912a30a2..27547ae3c7 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -3232,6 +3232,7 @@ WINE_CONFIG_MAKEFILE(dlls/dpvoice)
|
|
WINE_CONFIG_MAKEFILE(dlls/dpvoice/tests)
|
|
WINE_CONFIG_MAKEFILE(dlls/dpwsockx)
|
|
WINE_CONFIG_MAKEFILE(dlls/drmclien)
|
|
+WINE_CONFIG_MAKEFILE(dlls/dsdmo)
|
|
WINE_CONFIG_MAKEFILE(dlls/dsound)
|
|
WINE_CONFIG_MAKEFILE(dlls/dsound/tests)
|
|
WINE_CONFIG_MAKEFILE(dlls/dsquery)
|
|
diff --git a/dlls/dsdmo/Makefile.in b/dlls/dsdmo/Makefile.in
|
|
new file mode 100644
|
|
index 0000000000..99816ae0c0
|
|
--- /dev/null
|
|
+++ b/dlls/dsdmo/Makefile.in
|
|
@@ -0,0 +1,6 @@
|
|
+MODULE = dsdmo.dll
|
|
+
|
|
+EXTRADLLFLAGS = -mno-cygwin
|
|
+
|
|
+C_SRCS = \
|
|
+ main.c
|
|
diff --git a/dlls/dsdmo/dsdmo.spec b/dlls/dsdmo/dsdmo.spec
|
|
new file mode 100644
|
|
index 0000000000..b16365d0c9
|
|
--- /dev/null
|
|
+++ b/dlls/dsdmo/dsdmo.spec
|
|
@@ -0,0 +1,4 @@
|
|
+@ stdcall -private DllCanUnloadNow()
|
|
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
|
+@ stdcall -private DllRegisterServer()
|
|
+@ stdcall -private DllUnregisterServer()
|
|
diff --git a/dlls/dsdmo/main.c b/dlls/dsdmo/main.c
|
|
new file mode 100644
|
|
index 0000000000..61a67f44d8
|
|
--- /dev/null
|
|
+++ b/dlls/dsdmo/main.c
|
|
@@ -0,0 +1,85 @@
|
|
+/*
|
|
+ * Copyright 2019 Alistair Leslie-Hughes
|
|
+ *
|
|
+ * This library is free software; you can redistribute it and/or
|
|
+ * modify it under the terms of the GNU Lesser General Public
|
|
+ * License as published by the Free Software Foundation; either
|
|
+ * version 2.1 of the License, or (at your option) any later version.
|
|
+ *
|
|
+ * This library is distributed in the hope that it will be useful,
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
+ * Lesser General Public License for more details.
|
|
+ *
|
|
+ * You should have received a copy of the GNU Lesser General Public
|
|
+ * License along with this library; if not, write to the Free Software
|
|
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
+ */
|
|
+#define COBJMACROS
|
|
+
|
|
+#include "ole2.h"
|
|
+#include "rpcproxy.h"
|
|
+
|
|
+#include "wine/debug.h"
|
|
+
|
|
+WINE_DEFAULT_DEBUG_CHANNEL(dsdmo);
|
|
+
|
|
+static HINSTANCE dsdmo_instance;
|
|
+
|
|
+/******************************************************************
|
|
+ * DllMain
|
|
+ */
|
|
+BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
|
|
+{
|
|
+ TRACE("(%p %d %p)\n", hInstDLL, fdwReason, lpv);
|
|
+
|
|
+ switch(fdwReason)
|
|
+ {
|
|
+ case DLL_WINE_PREATTACH:
|
|
+ return FALSE; /* prefer native version */
|
|
+ case DLL_PROCESS_ATTACH:
|
|
+ dsdmo_instance = hInstDLL;
|
|
+ DisableThreadLibraryCalls(dsdmo_instance);
|
|
+ break;
|
|
+ case DLL_PROCESS_DETACH:
|
|
+ if (lpv) break;
|
|
+ break;
|
|
+ }
|
|
+
|
|
+ return TRUE;
|
|
+}
|
|
+
|
|
+/***********************************************************************
|
|
+ * DllGetClassObject
|
|
+ */
|
|
+HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
|
|
+{
|
|
+ FIXME("%s %s %p\n", debugstr_guid(rclsid), debugstr_guid(riid), ppv);
|
|
+ return CLASS_E_CLASSNOTAVAILABLE;
|
|
+}
|
|
+
|
|
+/***********************************************************************
|
|
+ * DllCanUnloadNow
|
|
+ */
|
|
+HRESULT WINAPI DllCanUnloadNow(void)
|
|
+{
|
|
+ return S_FALSE;
|
|
+}
|
|
+
|
|
+/***********************************************************************
|
|
+ * DllRegisterServer
|
|
+ */
|
|
+HRESULT WINAPI DllRegisterServer(void)
|
|
+{
|
|
+ TRACE("()\n");
|
|
+ return __wine_register_resources(dsdmo_instance);
|
|
+}
|
|
+
|
|
+/***********************************************************************
|
|
+ * DllUnregisterServer
|
|
+ */
|
|
+HRESULT WINAPI DllUnregisterServer(void)
|
|
+{
|
|
+ TRACE("()\n");
|
|
+ return __wine_unregister_resources(dsdmo_instance);
|
|
+}
|
|
--
|
|
2.17.1
|
|
|