mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Rebase against d548639d977dee847350b408aec9522d68aef813.
This commit is contained in:
parent
46bd2a545f
commit
0dddb28c32
@ -191,7 +191,7 @@ for more details.*
|
||||
* Implement an Arial replacement font ([Wine Bug #32323](https://bugs.winehq.org/show_bug.cgi?id=32323))
|
||||
* Implement combase.WindowsSubstring function
|
||||
* Implement default homepage button in inetcpl.cpl
|
||||
* Implement empty enumerator for IWiaDevMgr::EnumDeviceInfo ([Wine Bug #27775](https://bugs.winehq.org/show_bug.cgi?id=27775))
|
||||
* ~~Implement empty enumerator for IWiaDevMgr::EnumDeviceInfo~~ ([Wine Bug #27775](https://bugs.winehq.org/show_bug.cgi?id=27775))
|
||||
* Implement enumeration of sound devices and basic properties to dxdiagn ([Wine Bug #32613](https://bugs.winehq.org/show_bug.cgi?id=32613))
|
||||
* Implement exclusive mode in PulseAudio backend ([Wine Bug #37042](https://bugs.winehq.org/show_bug.cgi?id=37042))
|
||||
* Implement general tab for file property dialog
|
||||
@ -299,7 +299,7 @@ for more details.*
|
||||
* Support for shell32 file operation progress dialog
|
||||
* Support for stored file ACLs ([Wine Bug #33576](https://bugs.winehq.org/show_bug.cgi?id=33576))
|
||||
* Support for ws2_32.dll.WSAPoll ([Wine Bug #38601](https://bugs.winehq.org/show_bug.cgi?id=38601))
|
||||
* Translate flags in LaunchINFSectionW
|
||||
* ~~Translate flags in LaunchINFSectionW~~
|
||||
* Tumblebugs 2 requires DXTn software encoding support ([Wine Bug #29586](https://bugs.winehq.org/show_bug.cgi?id=29586))
|
||||
* Update a XIM candidate position when cursor location changes ([Wine Bug #30938](https://bugs.winehq.org/show_bug.cgi?id=30938))
|
||||
* Use GLX_MESA_query_renderer extension to get more exact GPU infos
|
||||
|
5
debian/changelog
vendored
5
debian/changelog
vendored
@ -23,6 +23,11 @@ wine-staging (1.7.53) UNRELEASED; urgency=low
|
||||
* Removed patch to add support for /passive command line option to msiexec
|
||||
(fixed upstream).
|
||||
* Removed patch to return a dummy BIOS name in Win32_BIOS (accepted upstream).
|
||||
* Removed patch to implement empty enumerator for IWiaDevMgr::EnumDeviceInfo
|
||||
(accepted upstream).
|
||||
* Removed patch to translate flags in LaunchINFSectionW (accepted upstream).
|
||||
* Removed patch to return success when trying to disable proxy, although no
|
||||
proxy is set (accepted upstream).
|
||||
* Partially removed patches for ws2_32 TransmitFile (accepted upstream).
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 04 Oct 2015 23:56:05 +0200
|
||||
|
||||
|
@ -1,85 +0,0 @@
|
||||
From e81a06349b039e60a7d9fcaa6f38b874767e7543 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sun, 30 Aug 2015 20:55:52 +0200
|
||||
Subject: advpack: Translate flags in LaunchINFSection.
|
||||
|
||||
---
|
||||
dlls/advpack/install.c | 6 +++++-
|
||||
dlls/advpack/tests/install.c | 11 ++++++++++-
|
||||
include/advpub.h | 4 ++++
|
||||
3 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/advpack/install.c b/dlls/advpack/install.c
|
||||
index f75eb01..dcd1dd7 100644
|
||||
--- a/dlls/advpack/install.c
|
||||
+++ b/dlls/advpack/install.c
|
||||
@@ -776,7 +776,11 @@ INT WINAPI LaunchINFSectionW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, INT sho
|
||||
|
||||
str_flags = get_parameter(&cmdline_ptr, ',', TRUE);
|
||||
if (str_flags)
|
||||
- flags = atolW(str_flags);
|
||||
+ {
|
||||
+ DWORD inf_flags = atolW(str_flags);
|
||||
+ if (inf_flags & LIS_QUIET) flags |= RSC_FLAG_QUIET;
|
||||
+ if (inf_flags & LIS_NOGRPCONV) flags |= RSC_FLAG_NGCONV;
|
||||
+ }
|
||||
|
||||
ZeroMemory(&info, sizeof(ADVInfo));
|
||||
|
||||
diff --git a/dlls/advpack/tests/install.c b/dlls/advpack/tests/install.c
|
||||
index 875e7d4..c9cd720 100644
|
||||
--- a/dlls/advpack/tests/install.c
|
||||
+++ b/dlls/advpack/tests/install.c
|
||||
@@ -190,6 +190,8 @@ static void test_LaunchINFSection(void)
|
||||
HRESULT hr;
|
||||
char cmdline[MAX_PATH];
|
||||
static char file[] = "test.inf,DefaultInstall,4,0";
|
||||
+ static char file2[] = "one\\test.inf,DefaultInstall,4,0";
|
||||
+ static char file3[] = "test.inf,,1,0";
|
||||
|
||||
/* The 'No UI' flag seems to have no effect whatsoever on Windows.
|
||||
* So only do this test in interactive mode.
|
||||
@@ -207,10 +209,14 @@ static void test_LaunchINFSection(void)
|
||||
/* try a full path to the INF */
|
||||
lstrcpyA(cmdline, CURR_DIR);
|
||||
lstrcatA(cmdline, "\\");
|
||||
- lstrcatA(cmdline, "one\\test.inf,DefaultInstall,,4");
|
||||
+ lstrcatA(cmdline, file2);
|
||||
hr = pLaunchINFSection(NULL, NULL, cmdline, 0);
|
||||
ok(hr == 0, "Expected 0, got %d\n", hr);
|
||||
|
||||
+ /* try relative INF filename */
|
||||
+ hr = pLaunchINFSection(NULL, NULL, file2, 0);
|
||||
+ ok(hr == 0, "Expected 0, got %d\n", hr);
|
||||
+
|
||||
DeleteFileA("one\\test.inf");
|
||||
RemoveDirectoryA("one");
|
||||
|
||||
@@ -220,6 +226,9 @@ static void test_LaunchINFSection(void)
|
||||
hr = pLaunchINFSection(NULL, NULL, file, 0);
|
||||
ok(hr == 0, "Expected 0, got %d\n", hr);
|
||||
|
||||
+ hr = pLaunchINFSection(NULL, NULL, file3, 0);
|
||||
+ ok(hr == 0, "Expected 0, got %d\n", hr);
|
||||
+
|
||||
DeleteFileA("test.inf");
|
||||
}
|
||||
|
||||
diff --git a/include/advpub.h b/include/advpub.h
|
||||
index b213b1f..7823e0a 100644
|
||||
--- a/include/advpub.h
|
||||
+++ b/include/advpub.h
|
||||
@@ -135,6 +135,10 @@ DECL_WINELIB_TYPE_AW(LPCSTRTABLE)
|
||||
#define RSC_FLAG_DELAYREGISTEROCX 0x00000200
|
||||
#define RSC_FLAG_SETUPAPI 0x00000400
|
||||
|
||||
+/* Flags for LaunchINFSection */
|
||||
+#define LIS_QUIET 0x00000001
|
||||
+#define LIS_NOGRPCONV 0x00000002
|
||||
+
|
||||
/* Flags for DelNode */
|
||||
#define ADN_DEL_IF_EMPTY 0x00000001
|
||||
#define ADN_DONT_DEL_SUBDIRS 0x00000002
|
||||
--
|
||||
2.5.0
|
||||
|
@ -1 +0,0 @@
|
||||
Fixes: Translate flags in LaunchINFSectionW
|
@ -1,4 +1,4 @@
|
||||
From 5bf6e56850354195aec9ec1146e3f82a0b2bcfdb Mon Sep 17 00:00:00 2001
|
||||
From f81b1feadca76ec41c834915fd5c5ce43f66f7b1 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Storsjo <martin@martin.st>
|
||||
Date: Mon, 3 Aug 2015 22:26:02 +0300
|
||||
Subject: vcruntime140: Add the new MSVC 2015 compiler specific DLL.
|
||||
@ -20,12 +20,12 @@ msvcrt.
|
||||
create mode 100644 dlls/vcruntime140/vcruntime140.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ed1052c..16d87ac 100644
|
||||
index e22b0ef..498470f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3328,6 +3328,7 @@ WINE_CONFIG_TEST(dlls/vcomp/tests)
|
||||
WINE_CONFIG_DLL(vcomp100)
|
||||
@@ -3363,6 +3363,7 @@ WINE_CONFIG_DLL(vcomp100)
|
||||
WINE_CONFIG_DLL(vcomp110)
|
||||
WINE_CONFIG_DLL(vcomp120)
|
||||
WINE_CONFIG_DLL(vcomp90)
|
||||
+WINE_CONFIG_DLL(vcruntime140,,[implib])
|
||||
WINE_CONFIG_DLL(vdhcp.vxd,enable_win16)
|
||||
@ -159,5 +159,5 @@ index 0000000..9027955
|
||||
+@ cdecl wcsrchr(wstr long) ntdll.wcsrchr
|
||||
+@ cdecl wcsstr(wstr wstr) MSVCRT_wcsstr
|
||||
--
|
||||
2.5.0
|
||||
2.6.0
|
||||
|
||||
|
@ -52,7 +52,7 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "ebb320fa37f2ad27649f571946af038e9d70ced2"
|
||||
echo "d548639d977dee847350b408aec9522d68aef813"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
@ -87,7 +87,6 @@ patch_enable_all ()
|
||||
enable_Pipelight="$1"
|
||||
enable_Staging="$1"
|
||||
enable_advapi32_LsaLookupSids="$1"
|
||||
enable_advpack_LaunchINFSection="$1"
|
||||
enable_amstream_GetMultiMediaStream="$1"
|
||||
enable_api_ms_win_crt_Stub_DLLs="$1"
|
||||
enable_authz_Stub_Functions="$1"
|
||||
@ -280,7 +279,6 @@ patch_enable_all ()
|
||||
enable_uxtheme_GTK_Theming="$1"
|
||||
enable_version_VerQueryValue="$1"
|
||||
enable_wbemdisp_ISWbemSecurity="$1"
|
||||
enable_wiaservc_IEnumWIA_DEV_INFO="$1"
|
||||
enable_wine_inf_Performance="$1"
|
||||
enable_wine_inf_ProfileList_UserSID="$1"
|
||||
enable_wineboot_DriveSerial="$1"
|
||||
@ -353,9 +351,6 @@ patch_enable ()
|
||||
advapi32-LsaLookupSids)
|
||||
enable_advapi32_LsaLookupSids="$2"
|
||||
;;
|
||||
advpack-LaunchINFSection)
|
||||
enable_advpack_LaunchINFSection="$2"
|
||||
;;
|
||||
amstream-GetMultiMediaStream)
|
||||
enable_amstream_GetMultiMediaStream="$2"
|
||||
;;
|
||||
@ -935,9 +930,6 @@ patch_enable ()
|
||||
wbemdisp-ISWbemSecurity)
|
||||
enable_wbemdisp_ISWbemSecurity="$2"
|
||||
;;
|
||||
wiaservc-IEnumWIA_DEV_INFO)
|
||||
enable_wiaservc_IEnumWIA_DEV_INFO="$2"
|
||||
;;
|
||||
wine.inf-Performance)
|
||||
enable_wine_inf_Performance="$2"
|
||||
;;
|
||||
@ -2228,18 +2220,6 @@ if test "$enable_advapi32_LsaLookupSids" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset advpack-LaunchINFSection
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/advpack/install.c, dlls/advpack/tests/install.c, include/advpub.h
|
||||
# |
|
||||
if test "$enable_advpack_LaunchINFSection" -eq 1; then
|
||||
patch_apply advpack-LaunchINFSection/0001-advpack-Translate-flags-in-LaunchINFSection.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "advpack: Translate flags in LaunchINFSection.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset amstream-GetMultiMediaStream
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -5435,21 +5415,6 @@ if test "$enable_wbemdisp_ISWbemSecurity" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wiaservc-IEnumWIA_DEV_INFO
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#27775] Implement empty enumerator for IWiaDevMgr::EnumDeviceInfo
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/wiaservc/Makefile.in, dlls/wiaservc/enumwiadevinfo.c, dlls/wiaservc/wiadevmgr.c, dlls/wiaservc/wiaservc_private.h
|
||||
# |
|
||||
if test "$enable_wiaservc_IEnumWIA_DEV_INFO" -eq 1; then
|
||||
patch_apply wiaservc-IEnumWIA_DEV_INFO/0001-wiaservc-Implement-IWiaDevMgr-EnumDeviceInfo-by-retu.patch
|
||||
(
|
||||
echo '+ { "Mikael Ståldal", "wiaservc: Implement IWiaDevMgr::EnumDeviceInfo by returning an empty enumeration of devices.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wine.inf-Performance
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -6328,11 +6293,9 @@ fi
|
||||
# | * dlls/wininet/internet.c, dlls/wininet/tests/internet.c
|
||||
# |
|
||||
if test "$enable_wininet_Internet_Settings" -eq 1; then
|
||||
patch_apply wininet-Internet_Settings/0001-wininet-Disabling-proxy-should-return-success-when-n.patch
|
||||
patch_apply wininet-Internet_Settings/0002-wininet-Allow-INTERNET_OPTION_SETTINGS_CHANGED-on-co.patch
|
||||
patch_apply wininet-Internet_Settings/0003-wininet-Add-support-for-INTERNET_OPTION_SETTINGS_CHA.patch
|
||||
patch_apply wininet-Internet_Settings/0001-wininet-Allow-INTERNET_OPTION_SETTINGS_CHANGED-on-co.patch
|
||||
patch_apply wininet-Internet_Settings/0002-wininet-Add-support-for-INTERNET_OPTION_SETTINGS_CHA.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "wininet: Disabling proxy should return success when no proxy was enabled.", 1 },';
|
||||
echo '+ { "Michael Müller", "wininet: Allow INTERNET_OPTION_SETTINGS_CHANGED on connections.", 1 },';
|
||||
echo '+ { "Michael Müller", "wininet: Add support for INTERNET_OPTION_SETTINGS_CHANGED in InternetSetOption.", 1 },';
|
||||
) >> "$patchlist"
|
||||
|
@ -1,221 +0,0 @@
|
||||
From 5b772e16b29cb0831e5e431c78e2bd7e601d162e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Mikael=20St=C3=A5ldal?= <mikael@staldal.nu>
|
||||
Date: Sun, 11 May 2014 12:07:20 +0200
|
||||
Subject: wiaservc: Implement IWiaDevMgr::EnumDeviceInfo by returning an empty
|
||||
enumeration of devices.
|
||||
|
||||
Implement IWiaDevMgr::EnumDeviceInfo by returning an empty enumeration
|
||||
of devices. Fix for bug bug 27775.
|
||||
---
|
||||
dlls/wiaservc/Makefile.in | 1 +
|
||||
dlls/wiaservc/enumwiadevinfo.c | 140 +++++++++++++++++++++++++++++++++++++++
|
||||
dlls/wiaservc/wiadevmgr.c | 14 +++-
|
||||
dlls/wiaservc/wiaservc_private.h | 8 +++
|
||||
4 files changed, 161 insertions(+), 2 deletions(-)
|
||||
create mode 100644 dlls/wiaservc/enumwiadevinfo.c
|
||||
|
||||
diff --git a/dlls/wiaservc/Makefile.in b/dlls/wiaservc/Makefile.in
|
||||
index b40c8f0..0bdbff1 100644
|
||||
--- a/dlls/wiaservc/Makefile.in
|
||||
+++ b/dlls/wiaservc/Makefile.in
|
||||
@@ -4,6 +4,7 @@ IMPORTS = uuid ole32 advapi32
|
||||
C_SRCS = \
|
||||
factory.c \
|
||||
service.c \
|
||||
+ enumwiadevinfo.c \
|
||||
wiadevmgr.c \
|
||||
wiaservc_main.c
|
||||
|
||||
diff --git a/dlls/wiaservc/enumwiadevinfo.c b/dlls/wiaservc/enumwiadevinfo.c
|
||||
new file mode 100644
|
||||
index 0000000..85c75ce
|
||||
--- /dev/null
|
||||
+++ b/dlls/wiaservc/enumwiadevinfo.c
|
||||
@@ -0,0 +1,140 @@
|
||||
+/*
|
||||
+ * IEnumWIA_DEV_INFO implementation.
|
||||
+ *
|
||||
+ * Copyright 2014 Mikael Ståldal
|
||||
+ *
|
||||
+ * 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 "objbase.h"
|
||||
+#include "wia_lh.h"
|
||||
+
|
||||
+#include "wiaservc_private.h"
|
||||
+
|
||||
+#include "wine/debug.h"
|
||||
+
|
||||
+WINE_DEFAULT_DEBUG_CHANNEL(wia);
|
||||
+
|
||||
+static inline enumwiadevinfo *impl_from_IEnumWIA_DEV_INFO(IEnumWIA_DEV_INFO *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, enumwiadevinfo, IEnumWIA_DEV_INFO_iface);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_QueryInterface(IEnumWIA_DEV_INFO *iface, REFIID riid, void **ppvObject)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+
|
||||
+ TRACE("(%p, %s, %p)\n", This, debugstr_guid(riid), ppvObject);
|
||||
+
|
||||
+ if (IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IEnumWIA_DEV_INFO))
|
||||
+ *ppvObject = iface;
|
||||
+ else
|
||||
+ {
|
||||
+ FIXME("interface %s not implemented\n", debugstr_guid(riid));
|
||||
+ *ppvObject = NULL;
|
||||
+ return E_NOINTERFACE;
|
||||
+ }
|
||||
+ IUnknown_AddRef((IUnknown*) *ppvObject);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static ULONG WINAPI enumwiadevinfo_AddRef(IEnumWIA_DEV_INFO *iface)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ return InterlockedIncrement(&This->ref);
|
||||
+}
|
||||
+
|
||||
+static ULONG WINAPI enumwiadevinfo_Release(IEnumWIA_DEV_INFO *iface)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ ULONG ref;
|
||||
+
|
||||
+ ref = InterlockedDecrement(&This->ref);
|
||||
+ if (ref == 0)
|
||||
+ HeapFree(GetProcessHeap(), 0, This);
|
||||
+ return ref;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_Next(IEnumWIA_DEV_INFO *iface, ULONG celt, IWiaPropertyStorage **rgelt, ULONG *pceltFetched)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ TRACE("(%p, %d, %p, %p)\n", This, celt, rgelt, pceltFetched);
|
||||
+
|
||||
+ *pceltFetched = 0;
|
||||
+ return S_FALSE;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_Skip(IEnumWIA_DEV_INFO *iface, ULONG celt)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ TRACE("(%p, %u)\n", This, celt);
|
||||
+
|
||||
+ return S_FALSE;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_Reset(IEnumWIA_DEV_INFO *iface)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ TRACE("(%p)\n", This);
|
||||
+
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_Clone(IEnumWIA_DEV_INFO *iface, IEnumWIA_DEV_INFO **ppIEnum)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ FIXME("(%p, %p): stub\n", This, ppIEnum);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI enumwiadevinfo_GetCount(IEnumWIA_DEV_INFO *iface, ULONG *celt)
|
||||
+{
|
||||
+ enumwiadevinfo *This = impl_from_IEnumWIA_DEV_INFO(iface);
|
||||
+ TRACE("(%p, %p)\n", This, celt);
|
||||
+
|
||||
+ *celt = 0;
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static const IEnumWIA_DEV_INFOVtbl WIASERVC_IEnumWIA_DEV_INFO_Vtbl =
|
||||
+{
|
||||
+ enumwiadevinfo_QueryInterface,
|
||||
+ enumwiadevinfo_AddRef,
|
||||
+ enumwiadevinfo_Release,
|
||||
+ enumwiadevinfo_Next,
|
||||
+ enumwiadevinfo_Skip,
|
||||
+ enumwiadevinfo_Reset,
|
||||
+ enumwiadevinfo_Clone,
|
||||
+ enumwiadevinfo_GetCount
|
||||
+};
|
||||
+
|
||||
+HRESULT enumwiadevinfo_Constructor(IEnumWIA_DEV_INFO **ppObj)
|
||||
+{
|
||||
+ enumwiadevinfo *This;
|
||||
+ TRACE("(%p)\n", ppObj);
|
||||
+ This = HeapAlloc(GetProcessHeap(), 0, sizeof(enumwiadevinfo));
|
||||
+ if (This)
|
||||
+ {
|
||||
+ This->IEnumWIA_DEV_INFO_iface.lpVtbl = &WIASERVC_IEnumWIA_DEV_INFO_Vtbl;
|
||||
+ This->ref = 1;
|
||||
+ *ppObj = &This->IEnumWIA_DEV_INFO_iface;
|
||||
+ return S_OK;
|
||||
+ }
|
||||
+ *ppObj = NULL;
|
||||
+ return E_OUTOFMEMORY;
|
||||
+}
|
||||
diff --git a/dlls/wiaservc/wiadevmgr.c b/dlls/wiaservc/wiadevmgr.c
|
||||
index 6eb82aa..8305ae2 100644
|
||||
--- a/dlls/wiaservc/wiadevmgr.c
|
||||
+++ b/dlls/wiaservc/wiadevmgr.c
|
||||
@@ -72,8 +72,18 @@ static ULONG WINAPI wiadevmgr_Release(IWiaDevMgr *iface)
|
||||
static HRESULT WINAPI wiadevmgr_EnumDeviceInfo(IWiaDevMgr *iface, LONG lFlag, IEnumWIA_DEV_INFO **ppIEnum)
|
||||
{
|
||||
wiadevmgr *This = impl_from_IWiaDevMgr(iface);
|
||||
- FIXME("(%p, %d, %p): stub\n", This, lFlag, ppIEnum);
|
||||
- return E_NOTIMPL;
|
||||
+ HRESULT res;
|
||||
+ IEnumWIA_DEV_INFO *enumdevinfo = NULL;
|
||||
+
|
||||
+ FIXME("(%p, %d, %p): returning empty IEnumWIA_DEV_INFO\n", This, lFlag, ppIEnum);
|
||||
+
|
||||
+ res = enumwiadevinfo_Constructor(&enumdevinfo);
|
||||
+ if (FAILED(res))
|
||||
+ return res;
|
||||
+
|
||||
+ res = IEnumWIA_DEV_INFO_QueryInterface(enumdevinfo, &IID_IEnumWIA_DEV_INFO, (void **)ppIEnum);
|
||||
+ IEnumWIA_DEV_INFO_Release(enumdevinfo);
|
||||
+ return res;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI wiadevmgr_CreateDevice(IWiaDevMgr *iface, BSTR bstrDeviceID, IWiaItem **ppWiaItemRoot)
|
||||
diff --git a/dlls/wiaservc/wiaservc_private.h b/dlls/wiaservc/wiaservc_private.h
|
||||
index 33c9ba1..22ad553 100644
|
||||
--- a/dlls/wiaservc/wiaservc_private.h
|
||||
+++ b/dlls/wiaservc/wiaservc_private.h
|
||||
@@ -36,6 +36,14 @@ typedef struct
|
||||
|
||||
HRESULT wiadevmgr_Constructor(IWiaDevMgr **ppObj) DECLSPEC_HIDDEN;
|
||||
|
||||
+typedef struct
|
||||
+{
|
||||
+ IEnumWIA_DEV_INFO IEnumWIA_DEV_INFO_iface;
|
||||
+ LONG ref;
|
||||
+} enumwiadevinfo;
|
||||
+
|
||||
+HRESULT enumwiadevinfo_Constructor(IEnumWIA_DEV_INFO **ppObj) DECLSPEC_HIDDEN;
|
||||
+
|
||||
/* Little helper functions */
|
||||
static inline char *
|
||||
wiaservc_strdup(const char *s)
|
||||
--
|
||||
2.3.3
|
||||
|
@ -1 +0,0 @@
|
||||
Fixes: [27775] Implement empty enumerator for IWiaDevMgr::EnumDeviceInfo
|
@ -1,26 +0,0 @@
|
||||
From e79956abb099aa58f3b4a2859f8595434e3132e1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 7 Aug 2015 02:44:31 +0200
|
||||
Subject: wininet: Disabling proxy should return success when no proxy was
|
||||
enabled.
|
||||
|
||||
---
|
||||
dlls/wininet/internet.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/wininet/internet.c b/dlls/wininet/internet.c
|
||||
index ee04f40..b004c68 100644
|
||||
--- a/dlls/wininet/internet.c
|
||||
+++ b/dlls/wininet/internet.c
|
||||
@@ -359,7 +359,7 @@ static LONG INTERNET_SaveProxySettings( proxyinfo_t *lpwpi )
|
||||
}
|
||||
else
|
||||
{
|
||||
- if ((ret = RegDeleteValueW( key, szProxyServer )))
|
||||
+ if ((ret = RegDeleteValueW( key, szProxyServer )) && ret != ERROR_FILE_NOT_FOUND)
|
||||
{
|
||||
RegCloseKey( key );
|
||||
return ret;
|
||||
--
|
||||
2.5.0
|
||||
|
Loading…
Reference in New Issue
Block a user