mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
Added patch with IEnumString stub interface for ACLShellSource.
This commit is contained in:
parent
1b0d071e41
commit
2a8300034c
@ -39,8 +39,9 @@ Wine. All those differences are also documented on the
|
||||
Included bug fixes and improvements
|
||||
-----------------------------------
|
||||
|
||||
**Bug fixes and features included in the next upcoming release [11]:**
|
||||
**Bug fixes and features included in the next upcoming release [12]:**
|
||||
|
||||
* Add IEnumString stub interface for ACLShellSource ([Wine Bug #18019](https://bugs.winehq.org/show_bug.cgi?id=18019))
|
||||
* Add implementation for shlwapi.AssocGetPerceivedType
|
||||
* Add stub for atl80.AtlIPersistPropertyBag_Save ([Wine Bug #33888](https://bugs.winehq.org/show_bug.cgi?id=33888))
|
||||
* Add stub for fltlib.FilterLoad ([Wine Bug #38435](https://bugs.winehq.org/show_bug.cgi?id=38435))
|
||||
|
1
debian/changelog
vendored
1
debian/changelog
vendored
@ -26,6 +26,7 @@ wine-staging (1.7.43) UNRELEASED; urgency=low
|
||||
* Added patch to implement shlwapi.AssocGetPerceivedType.
|
||||
* Added patch to avoid creating foreign thread queues for attach_thread_input
|
||||
requests.
|
||||
* Added patch with IEnumString stub interface for ACLShellSource.
|
||||
* Removed patch to use lockfree implementation for FD cache (accepted
|
||||
upstream).
|
||||
* Removed patch to properly handle closing sockets during a select call
|
||||
|
@ -0,0 +1,123 @@
|
||||
From 49050987e49d61420d2d46dc167551ff439a537a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 13 May 2015 01:31:35 +0200
|
||||
Subject: browseui: Add IEnumString stub interface for ACLShellSource.
|
||||
|
||||
---
|
||||
dlls/browseui/aclsource.c | 72 +++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 72 insertions(+)
|
||||
|
||||
diff --git a/dlls/browseui/aclsource.c b/dlls/browseui/aclsource.c
|
||||
index 07033cc..bb98b33 100644
|
||||
--- a/dlls/browseui/aclsource.c
|
||||
+++ b/dlls/browseui/aclsource.c
|
||||
@@ -44,6 +44,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(browseui);
|
||||
|
||||
typedef struct tagACLMulti {
|
||||
IACList2 IACList2_iface;
|
||||
+ IEnumString IEnumString_iface;
|
||||
LONG refCount;
|
||||
DWORD dwOptions;
|
||||
} ACLShellSource;
|
||||
@@ -53,6 +54,11 @@ static inline ACLShellSource *impl_from_IACList2(IACList2 *iface)
|
||||
return CONTAINING_RECORD(iface, ACLShellSource, IACList2_iface);
|
||||
}
|
||||
|
||||
+static inline ACLShellSource *impl_from_IEnumString(IEnumString *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, ACLShellSource, IEnumString_iface);
|
||||
+}
|
||||
+
|
||||
static void ACLShellSource_Destructor(ACLShellSource *This)
|
||||
{
|
||||
TRACE("destroying %p\n", This);
|
||||
@@ -69,6 +75,10 @@ static HRESULT WINAPI ACLShellSource_QueryInterface(IACList2 *iface, REFIID iid,
|
||||
{
|
||||
*ppvOut = &This->IACList2_iface;
|
||||
}
|
||||
+ else if(IsEqualIID(iid, &IID_IEnumString))
|
||||
+ {
|
||||
+ *ppvOut = &This->IEnumString_iface;
|
||||
+ }
|
||||
|
||||
if (*ppvOut)
|
||||
{
|
||||
@@ -133,6 +143,67 @@ static const IACList2Vtbl ACLMulti_ACList2Vtbl =
|
||||
ACLShellSource_GetOptions
|
||||
};
|
||||
|
||||
+static HRESULT WINAPI ACLShellSource_IEnumString_QueryInterface(IEnumString *iface, REFIID iid, LPVOID *ppvOut)
|
||||
+{
|
||||
+ ACLShellSource *This = impl_from_IEnumString(iface);
|
||||
+ return ACLShellSource_QueryInterface(&This->IACList2_iface, iid, ppvOut);
|
||||
+}
|
||||
+
|
||||
+static ULONG WINAPI ACLShellSource_IEnumString_AddRef(IEnumString *iface)
|
||||
+{
|
||||
+ ACLShellSource *This = impl_from_IEnumString(iface);
|
||||
+ return ACLShellSource_AddRef(&This->IACList2_iface);
|
||||
+}
|
||||
+
|
||||
+static ULONG WINAPI ACLShellSource_IEnumString_Release(IEnumString *iface)
|
||||
+{
|
||||
+ ACLShellSource *This = impl_from_IEnumString(iface);
|
||||
+ return ACLShellSource_Release(&This->IACList2_iface);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI ACLShellSource_IEnumString_Next(IEnumString *iface, ULONG celt, LPOLESTR *rgelt, ULONG *pceltFetched)
|
||||
+{
|
||||
+ FIXME("(%p, %d, %p, %p): stub\n", iface, celt, rgelt, pceltFetched);
|
||||
+
|
||||
+ if (celt)
|
||||
+ *rgelt = NULL;
|
||||
+ if (pceltFetched)
|
||||
+ *pceltFetched = 0;
|
||||
+
|
||||
+ return S_FALSE;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI ACLShellSource_IEnumString_Reset(IEnumString *iface)
|
||||
+{
|
||||
+ FIXME("(%p): stub\n", iface);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI ACLShellSource_IEnumString_Skip(IEnumString *iface, ULONG celt)
|
||||
+{
|
||||
+ FIXME("(%p, %u): stub\n", iface, celt);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI ACLShellSource_IEnumString_Clone(IEnumString *iface, IEnumString **ppOut)
|
||||
+{
|
||||
+ FIXME("(%p, %p): stub\n", iface, ppOut);
|
||||
+ *ppOut = NULL;
|
||||
+ return E_OUTOFMEMORY;
|
||||
+}
|
||||
+
|
||||
+static const IEnumStringVtbl ACLShellSource_EnumStringVtbl =
|
||||
+{
|
||||
+ ACLShellSource_IEnumString_QueryInterface,
|
||||
+ ACLShellSource_IEnumString_AddRef,
|
||||
+ ACLShellSource_IEnumString_Release,
|
||||
+
|
||||
+ ACLShellSource_IEnumString_Next,
|
||||
+ ACLShellSource_IEnumString_Skip,
|
||||
+ ACLShellSource_IEnumString_Reset,
|
||||
+ ACLShellSource_IEnumString_Clone
|
||||
+};
|
||||
+
|
||||
HRESULT ACLShellSource_Constructor(IUnknown *pUnkOuter, IUnknown **ppOut)
|
||||
{
|
||||
ACLShellSource *This;
|
||||
@@ -144,6 +215,7 @@ HRESULT ACLShellSource_Constructor(IUnknown *pUnkOuter, IUnknown **ppOut)
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
This->IACList2_iface.lpVtbl = &ACLMulti_ACList2Vtbl;
|
||||
+ This->IEnumString_iface.lpVtbl = &ACLShellSource_EnumStringVtbl;
|
||||
This->refCount = 1;
|
||||
|
||||
TRACE("returning %p\n", This);
|
||||
--
|
||||
2.4.0
|
||||
|
1
patches/browseui-ACLShell_IEnumString/definition
Normal file
1
patches/browseui-ACLShell_IEnumString/definition
Normal file
@ -0,0 +1 @@
|
||||
Fixes: [18019] Add IEnumString stub interface for ACLShellSource
|
@ -55,7 +55,7 @@ version()
|
||||
echo "Copyright (C) 2014-2015 the Wine Staging project authors."
|
||||
echo ""
|
||||
echo "Patchset to be applied on upstream Wine:"
|
||||
echo " commit 6d323d81b2a604b89c612928a573b290c945df75"
|
||||
echo " commit 5f35f1a8dbbc9dc3fa629a7f123e045e3320f562"
|
||||
echo ""
|
||||
}
|
||||
|
||||
@ -83,6 +83,7 @@ patch_enable_all ()
|
||||
enable_advapi32_LsaLookupSids="$1"
|
||||
enable_advapi32_OpenSCManagerW="$1"
|
||||
enable_atl_AtlIPersistPropertyBag_Save="$1"
|
||||
enable_browseui_ACLShell_IEnumString="$1"
|
||||
enable_browseui_Progress_Dialog="$1"
|
||||
enable_category_stable="$1"
|
||||
enable_combase_String="$1"
|
||||
@ -311,6 +312,9 @@ patch_enable ()
|
||||
atl-AtlIPersistPropertyBag_Save)
|
||||
enable_atl_AtlIPersistPropertyBag_Save="$2"
|
||||
;;
|
||||
browseui-ACLShell_IEnumString)
|
||||
enable_browseui_ACLShell_IEnumString="$2"
|
||||
;;
|
||||
browseui-Progress_Dialog)
|
||||
enable_browseui_Progress_Dialog="$2"
|
||||
;;
|
||||
@ -1882,6 +1886,21 @@ if test "$enable_atl_AtlIPersistPropertyBag_Save" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset browseui-ACLShell_IEnumString
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#18019] Add IEnumString stub interface for ACLShellSource
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/browseui/aclsource.c
|
||||
# |
|
||||
if test "$enable_browseui_ACLShell_IEnumString" -eq 1; then
|
||||
patch_apply browseui-ACLShell_IEnumString/0001-browseui-Add-IEnumString-stub-interface-for-ACLShell.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "browseui: Add IEnumString stub interface for ACLShellSource.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset browseui-Progress_Dialog
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -2432,6 +2451,18 @@ if test "$enable_dxgi_GetDesc" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset makedep-PARENTSPEC
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * tools/makedep.c
|
||||
# |
|
||||
if test "$enable_makedep_PARENTSPEC" -eq 1; then
|
||||
patch_apply makedep-PARENTSPEC/0001-makedep-Add-support-for-PARENTSPEC-Makefile-variable.patch
|
||||
(
|
||||
echo '+ { "Sebastian Lackner", "makedep: Add support for PARENTSPEC Makefile variable.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset ntdll-DllRedirects
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -2452,18 +2483,6 @@ if test "$enable_ntdll_DllRedirects" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset makedep-PARENTSPEC
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * tools/makedep.c
|
||||
# |
|
||||
if test "$enable_makedep_PARENTSPEC" -eq 1; then
|
||||
patch_apply makedep-PARENTSPEC/0001-makedep-Add-support-for-PARENTSPEC-Makefile-variable.patch
|
||||
(
|
||||
echo '+ { "Sebastian Lackner", "makedep: Add support for PARENTSPEC Makefile variable.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wined3d-CSMT_Helper
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -3172,20 +3191,6 @@ if test "$enable_kernel32_CompareStringEx" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileInformationByHandle
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/file.c, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
patch_apply kernel32-SetFileInformationByHandle/0001-include-Declare-a-couple-more-file-information-class.patch
|
||||
patch_apply kernel32-SetFileInformationByHandle/0002-kernel32-Implement-SetFileInformationByHandle.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "include: Declare a couple more file information class structures.", 1 },';
|
||||
echo '+ { "Michael Müller", "kernel32: Implement SetFileInformationByHandle.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset server-File_Permissions
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -3227,6 +3232,20 @@ if test "$enable_ntdll_FileDispositionInformation" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileInformationByHandle
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/file.c, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
patch_apply kernel32-SetFileInformationByHandle/0001-include-Declare-a-couple-more-file-information-class.patch
|
||||
patch_apply kernel32-SetFileInformationByHandle/0002-kernel32-Implement-SetFileInformationByHandle.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "include: Declare a couple more file information class structures.", 1 },';
|
||||
echo '+ { "Michael Müller", "kernel32: Implement SetFileInformationByHandle.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-CopyFileEx
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
|
Loading…
x
Reference in New Issue
Block a user