You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
34 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
68441b1d95 | ||
|
abc1c143f3 | ||
|
316d085a4b | ||
|
2e7e083424 | ||
|
b9f7ec5ccf | ||
|
b5193cb799 | ||
|
00b2e468d3 | ||
|
aec9113618 | ||
|
773483f7f5 | ||
|
54850aa1ff | ||
|
f538f2e2db | ||
|
80c80bbaa8 | ||
|
136d5e3400 | ||
|
ecf05ee19e | ||
|
ec936167b3 | ||
|
c437a01e2f | ||
|
8630febc5c | ||
|
f5ca8f5a0c | ||
|
cafb155af5 | ||
|
b1a5648b37 | ||
|
b8a377e8d7 | ||
|
5b0e78d2c0 | ||
|
c87f47bcba | ||
|
d5e8d145c8 | ||
|
2239795e43 | ||
|
766e1ee8f8 | ||
|
95bf669895 | ||
|
2fc92f8ba6 | ||
|
0111d074e6 | ||
|
b4028037d9 | ||
|
e1c496b21e | ||
|
ee4ca71a7f | ||
|
3b01c6e2c5 | ||
|
98c906f843 |
11
.github/workflows/macOS.yml
vendored
11
.github/workflows/macOS.yml
vendored
@@ -17,14 +17,11 @@ jobs:
|
||||
brew update
|
||||
brew install --cask xquartz
|
||||
brew install bison \
|
||||
faudio \
|
||||
gphoto2 \
|
||||
gst-plugins-base \
|
||||
jxrlib \
|
||||
little-cms2 \
|
||||
mingw-w64 \
|
||||
molten-vk \
|
||||
mpg123
|
||||
sdl2
|
||||
|
||||
- name: Add bison & krb5 to $PATH
|
||||
run: |
|
||||
@@ -64,9 +61,10 @@ jobs:
|
||||
--x-lib=/opt/X11/lib
|
||||
|
||||
- name: Build wine64
|
||||
# mingw-w64 brew formula bumped binutils 2.38 causing a regression in parallel builds
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE/wine
|
||||
make -j$(sysctl -n hw.ncpu 2>/dev/null)
|
||||
make
|
||||
|
||||
wine-devel:
|
||||
runs-on: macos-latest
|
||||
@@ -124,6 +122,7 @@ jobs:
|
||||
--x-lib=/opt/X11/lib
|
||||
|
||||
- name: Build wine64
|
||||
# mingw-w64 brew formula bumped binutils 2.38 causing a regression in parallel builds
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE/wine
|
||||
make -j$(sysctl -n hw.ncpu 2>/dev/null)
|
||||
make
|
||||
|
@@ -1,18 +1,17 @@
|
||||
From b51fdc7e211f676d169c937209bf689e57252c5d Mon Sep 17 00:00:00 2001
|
||||
From 7e3c4d732bacaeaf37ab8f32a7548715825eff4d Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Tue, 22 Mar 2016 21:58:40 +0100
|
||||
Subject: [PATCH] dwrite: Avoid implicit cast of interface pointer.
|
||||
|
||||
---
|
||||
dlls/dwrite/font.c | 4 ++--
|
||||
dlls/dwrite/layout.c | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
dlls/dwrite/font.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c
|
||||
index aa51c744297..7cad015480f 100644
|
||||
index 2296c74c1e3..2b5e18aab19 100644
|
||||
--- a/dlls/dwrite/font.c
|
||||
+++ b/dlls/dwrite/font.c
|
||||
@@ -2130,7 +2130,7 @@ static struct dwrite_font *unsafe_impl_from_IDWriteFont(IDWriteFont *iface)
|
||||
@@ -2514,7 +2514,7 @@ static struct dwrite_font *unsafe_impl_from_IDWriteFont(IDWriteFont *iface)
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == (IDWriteFontVtbl*)&dwritefontvtbl);
|
||||
@@ -21,7 +20,7 @@ index aa51c744297..7cad015480f 100644
|
||||
}
|
||||
|
||||
struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
@@ -2138,7 +2138,7 @@ struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
@@ -2522,7 +2522,7 @@ struct dwrite_fontface *unsafe_impl_from_IDWriteFontFace(IDWriteFontFace *iface)
|
||||
if (!iface)
|
||||
return NULL;
|
||||
assert(iface->lpVtbl == (IDWriteFontFaceVtbl*)&dwritefontfacevtbl);
|
||||
@@ -30,19 +29,6 @@ index aa51c744297..7cad015480f 100644
|
||||
}
|
||||
|
||||
static struct dwrite_fontfacereference *unsafe_impl_from_IDWriteFontFaceReference(IDWriteFontFaceReference *iface)
|
||||
diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c
|
||||
index 1f6201a6a93..35791d5c22e 100644
|
||||
--- a/dlls/dwrite/layout.c
|
||||
+++ b/dlls/dwrite/layout.c
|
||||
@@ -5886,7 +5886,7 @@ static const IDWriteTextFormat3Vtbl dwritetextformatvtbl =
|
||||
static struct dwrite_textformat *unsafe_impl_from_IDWriteTextFormat(IDWriteTextFormat *iface)
|
||||
{
|
||||
return (iface->lpVtbl == (IDWriteTextFormatVtbl*)&dwritetextformatvtbl) ?
|
||||
- CONTAINING_RECORD(iface, struct dwrite_textformat, IDWriteTextFormat3_iface) : NULL;
|
||||
+ CONTAINING_RECORD((IDWriteTextFormat3 *)iface, struct dwrite_textformat, IDWriteTextFormat3_iface) : NULL;
|
||||
}
|
||||
|
||||
HRESULT create_textformat(const WCHAR *family_name, IDWriteFontCollection *collection, DWRITE_FONT_WEIGHT weight,
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From a349cc8bdcc3a083ea507dbbdeba9053e3a338e4 Mon Sep 17 00:00:00 2001
|
||||
From bd6e11aee0fbe2f880f87bec8b3d145b3de15dab Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Tue, 22 Mar 2016 23:08:30 +0100
|
||||
Subject: [PATCH] include: Check element type in CONTAINING_RECORD and similar
|
||||
@@ -31,31 +31,31 @@ index b4d681fe0f3..287ad394fae 100644
|
||||
|
||||
#endif /* __WINE_SERVER_LIST_H */
|
||||
diff --git a/include/wine/rbtree.h b/include/wine/rbtree.h
|
||||
index 8aae29c8c10..330b3e8fbc9 100644
|
||||
index 4e86f3cfb84..694dc039cb1 100644
|
||||
--- a/include/wine/rbtree.h
|
||||
+++ b/include/wine/rbtree.h
|
||||
@@ -23,8 +23,14 @@
|
||||
#ifndef __WINE_WINE_RBTREE_H
|
||||
#define __WINE_WINE_RBTREE_H
|
||||
|
||||
-#define WINE_RB_ENTRY_VALUE(element, type, field) \
|
||||
-#define RB_ENTRY_VALUE(element, type, field) \
|
||||
- ((type *)((char *)(element) - offsetof(type, field)))
|
||||
+#ifdef __GNUC__
|
||||
+# define WINE_RB_ENTRY_VALUE(element, type, field) ({ \
|
||||
+# define RB_ENTRY_VALUE(element, type, field) ({ \
|
||||
+ const typeof(((type *)0)->field) *__ptr = (element); \
|
||||
+ (type *)((char *)__ptr - offsetof(type, field)); })
|
||||
+#else
|
||||
+# define WINE_RB_ENTRY_VALUE(element, type, field) \
|
||||
+# define RB_ENTRY_VALUE(element, type, field) \
|
||||
+ ((type *)((char *)(element) - offsetof(type, field)))
|
||||
+#endif
|
||||
|
||||
struct wine_rb_entry
|
||||
struct rb_entry
|
||||
{
|
||||
diff --git a/include/winnt.h b/include/winnt.h
|
||||
index 46e17c546a7..d5c65d2017b 100644
|
||||
index 9296a3dc555..c7406b8db39 100644
|
||||
--- a/include/winnt.h
|
||||
+++ b/include/winnt.h
|
||||
@@ -793,8 +793,14 @@ typedef struct _MEMORY_BASIC_INFORMATION
|
||||
@@ -840,8 +840,14 @@ typedef struct _WIN32_MEMORY_RANGE_ENTRY
|
||||
#define RTL_FIELD_SIZE(type, field) (sizeof(((type *)0)->field))
|
||||
#define RTL_SIZEOF_THROUGH_FIELD(type, field) (FIELD_OFFSET(type, field) + RTL_FIELD_SIZE(type, field))
|
||||
|
||||
@@ -73,5 +73,5 @@ index 46e17c546a7..d5c65d2017b 100644
|
||||
#define ARRAYSIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#ifdef __WINESRC__
|
||||
--
|
||||
2.26.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From e3a6b75cbce69e18742135fdd8e105132d8ca9dd Mon Sep 17 00:00:00 2001
|
||||
From ea3579b5b3d701647f5c7f16de658f1cd7fe876d Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Fri, 30 Jul 2021 15:57:29 +1000
|
||||
Subject: [PATCH] d3dx11_43: Implement D3DX11GetImageInfoFromMemory
|
||||
@@ -38,7 +38,7 @@ index ccd4319ace2..6854c73ebcb 100644
|
||||
EXTRADLLFLAGS = -Wb,--prefer-native
|
||||
|
||||
diff --git a/dlls/d3dx11_43/main.c b/dlls/d3dx11_43/main.c
|
||||
index 950f6d76f5c..00c1db35e42 100644
|
||||
index 5dad027864f..00c1db35e42 100644
|
||||
--- a/dlls/d3dx11_43/main.c
|
||||
+++ b/dlls/d3dx11_43/main.c
|
||||
@@ -66,12 +66,3 @@ HRESULT WINAPI D3DX11GetImageInfoFromFileW(const WCHAR *filename, ID3DX11ThreadP
|
||||
@@ -49,13 +49,13 @@ index 950f6d76f5c..00c1db35e42 100644
|
||||
-HRESULT WINAPI D3DX11GetImageInfoFromMemory(const void *src_data, SIZE_T src_data_size, ID3DX11ThreadPump *pump,
|
||||
- D3DX11_IMAGE_INFO *img_info, HRESULT *hresult)
|
||||
-{
|
||||
- FIXME("src_data %p, src_data_size %lu, pump %p, img_info %p, hresult %p stub!\n",
|
||||
- FIXME("src_data %p, src_data_size %Iu, pump %p, img_info %p, hresult %p stub!\n",
|
||||
- src_data, src_data_size, pump, img_info, hresult);
|
||||
-
|
||||
- return E_NOTIMPL;
|
||||
-}
|
||||
diff --git a/dlls/d3dx11_43/texture.c b/dlls/d3dx11_43/texture.c
|
||||
index ee6808d76d6..8addf4f84d3 100644
|
||||
index 81ac8ee6db7..6881eec107d 100644
|
||||
--- a/dlls/d3dx11_43/texture.c
|
||||
+++ b/dlls/d3dx11_43/texture.c
|
||||
@@ -15,14 +15,190 @@
|
||||
@@ -155,7 +155,7 @@ index ee6808d76d6..8addf4f84d3 100644
|
||||
+ GUID container_format;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("src_data %p, src_data_size %lu, pump %p, img_info %p, hresult %p.\n",
|
||||
+ TRACE("src_data %p, src_data_size %Iu, pump %p, img_info %p, hresult %p.\n",
|
||||
+ src_data, src_data_size, pump, img_info, hresult);
|
||||
+
|
||||
+ if (!src_data || !src_data_size || !img_info)
|
||||
@@ -250,5 +250,5 @@ index ee6808d76d6..8addf4f84d3 100644
|
||||
SIZE_T data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
|
||||
ID3D11ShaderResourceView **view, HRESULT *hresult)
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 2f65959901f62bfc6a48c683e6eaa5d6ed5f7416 Mon Sep 17 00:00:00 2001
|
||||
From 5be34c9e347d4379179eeba742b25986152d4e4f Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Tue, 3 Aug 2021 11:13:18 +1000
|
||||
Subject: [PATCH] d3dx11_42: Implement D3DX11CreateTextureFromMemory
|
||||
@@ -9,7 +9,7 @@ Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
1 file changed, 342 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3dx11_43/texture.c b/dlls/d3dx11_43/texture.c
|
||||
index 8addf4f84d3..f47b8583c6c 100644
|
||||
index 6881eec107d..b91bd8d881a 100644
|
||||
--- a/dlls/d3dx11_43/texture.c
|
||||
+++ b/dlls/d3dx11_43/texture.c
|
||||
@@ -22,6 +22,7 @@
|
||||
@@ -239,7 +239,7 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
+ SIZE_T src_data_size, D3DX11_IMAGE_LOAD_INFO *load_info, ID3DX11ThreadPump *pump,
|
||||
ID3D11Resource **texture, HRESULT *hresult)
|
||||
{
|
||||
- FIXME("device %p, data %p, data_size %lu, load_info %p, pump %p, texture %p, hresult %p stub.\n",
|
||||
- FIXME("device %p, data %p, data_size %Iu, load_info %p, pump %p, texture %p, hresult %p stub.\n",
|
||||
- device, data, data_size, load_info, pump, texture, hresult);
|
||||
+ unsigned int frame_count, width, height, stride, frame_size;
|
||||
+ IWICFormatConverter *converter = NULL;
|
||||
@@ -259,7 +259,7 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
+ HRESULT hr;
|
||||
|
||||
- return E_NOTIMPL;
|
||||
+ TRACE("device %p, src_data %p, src_data_size %lu, load_info %p, pump %p, texture %p, hresult %p.\n",
|
||||
+ TRACE("device %p, data %p, data_size %Iu, load_info %p, pump %p, texture %p, hresult %p.\n",
|
||||
+ device, src_data, src_data_size, load_info, pump, texture, hresult);
|
||||
+
|
||||
+ if (!src_data || !src_data_size || !texture)
|
||||
@@ -391,5 +391,5 @@ index 8addf4f84d3..f47b8583c6c 100644
|
||||
|
||||
HRESULT WINAPI D3DX11SaveTextureToFileW(ID3D11DeviceContext *context, ID3D11Resource *texture,
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,317 +0,0 @@
|
||||
From a8d19eb67828f3c4f157f0734d0d22c47cc11882 Mon Sep 17 00:00:00 2001
|
||||
From: Andrey Gusev <andrey.goosev@gmail.com>
|
||||
Date: Mon, 17 Dec 2018 12:23:40 +1100
|
||||
Subject: [PATCH] d3dx9_*: Add D3DXSHProjectCubeMap stub
|
||||
|
||||
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46284
|
||||
---
|
||||
dlls/d3dx9_24/d3dx9_24.spec | 2 +-
|
||||
dlls/d3dx9_25/d3dx9_25.spec | 2 +-
|
||||
dlls/d3dx9_26/d3dx9_26.spec | 2 +-
|
||||
dlls/d3dx9_27/d3dx9_27.spec | 2 +-
|
||||
dlls/d3dx9_28/d3dx9_28.spec | 2 +-
|
||||
dlls/d3dx9_29/d3dx9_29.spec | 2 +-
|
||||
dlls/d3dx9_30/d3dx9_30.spec | 2 +-
|
||||
dlls/d3dx9_31/d3dx9_31.spec | 2 +-
|
||||
dlls/d3dx9_32/d3dx9_32.spec | 2 +-
|
||||
dlls/d3dx9_33/d3dx9_33.spec | 2 +-
|
||||
dlls/d3dx9_34/d3dx9_34.spec | 2 +-
|
||||
dlls/d3dx9_35/d3dx9_35.spec | 2 +-
|
||||
dlls/d3dx9_36/math.c | 14 ++++++++++++++
|
||||
dlls/d3dx9_37/d3dx9_37.spec | 2 +-
|
||||
dlls/d3dx9_38/d3dx9_38.spec | 2 +-
|
||||
dlls/d3dx9_39/d3dx9_39.spec | 2 +-
|
||||
dlls/d3dx9_40/d3dx9_40.spec | 2 +-
|
||||
dlls/d3dx9_41/d3dx9_41.spec | 2 +-
|
||||
dlls/d3dx9_42/d3dx9_42.spec | 2 +-
|
||||
dlls/d3dx9_43/d3dx9_43.spec | 2 +-
|
||||
include/d3dx9math.h | 1 +
|
||||
21 files changed, 34 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3dx9_24/d3dx9_24.spec b/dlls/d3dx9_24/d3dx9_24.spec
|
||||
index 7002e2b..06fb3ca 100644
|
||||
--- a/dlls/d3dx9_24/d3dx9_24.spec
|
||||
+++ b/dlls/d3dx9_24/d3dx9_24.spec
|
||||
@@ -256,7 +256,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_25/d3dx9_25.spec b/dlls/d3dx9_25/d3dx9_25.spec
|
||||
index 3010005..e7b5f6b 100644
|
||||
--- a/dlls/d3dx9_25/d3dx9_25.spec
|
||||
+++ b/dlls/d3dx9_25/d3dx9_25.spec
|
||||
@@ -256,7 +256,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_26/d3dx9_26.spec b/dlls/d3dx9_26/d3dx9_26.spec
|
||||
index fe641a7..c4a6c9f 100644
|
||||
--- a/dlls/d3dx9_26/d3dx9_26.spec
|
||||
+++ b/dlls/d3dx9_26/d3dx9_26.spec
|
||||
@@ -260,7 +260,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_27/d3dx9_27.spec b/dlls/d3dx9_27/d3dx9_27.spec
|
||||
index fe641a7..c4a6c9f 100644
|
||||
--- a/dlls/d3dx9_27/d3dx9_27.spec
|
||||
+++ b/dlls/d3dx9_27/d3dx9_27.spec
|
||||
@@ -260,7 +260,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_28/d3dx9_28.spec b/dlls/d3dx9_28/d3dx9_28.spec
|
||||
index acbcf26..480396b 100644
|
||||
--- a/dlls/d3dx9_28/d3dx9_28.spec
|
||||
+++ b/dlls/d3dx9_28/d3dx9_28.spec
|
||||
@@ -265,7 +265,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_29/d3dx9_29.spec b/dlls/d3dx9_29/d3dx9_29.spec
|
||||
index acbcf26..480396b 100644
|
||||
--- a/dlls/d3dx9_29/d3dx9_29.spec
|
||||
+++ b/dlls/d3dx9_29/d3dx9_29.spec
|
||||
@@ -265,7 +265,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_30/d3dx9_30.spec b/dlls/d3dx9_30/d3dx9_30.spec
|
||||
index fdf5ee4..09014db 100644
|
||||
--- a/dlls/d3dx9_30/d3dx9_30.spec
|
||||
+++ b/dlls/d3dx9_30/d3dx9_30.spec
|
||||
@@ -265,7 +265,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_31/d3dx9_31.spec b/dlls/d3dx9_31/d3dx9_31.spec
|
||||
index ed842cd..3506942 100644
|
||||
--- a/dlls/d3dx9_31/d3dx9_31.spec
|
||||
+++ b/dlls/d3dx9_31/d3dx9_31.spec
|
||||
@@ -262,7 +262,7 @@
|
||||
@ stdcall D3DXSHEvalSphericalLight(long ptr float float float float ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_32/d3dx9_32.spec b/dlls/d3dx9_32/d3dx9_32.spec
|
||||
index af5624c..4d24919 100644
|
||||
--- a/dlls/d3dx9_32/d3dx9_32.spec
|
||||
+++ b/dlls/d3dx9_32/d3dx9_32.spec
|
||||
@@ -267,7 +267,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_33/d3dx9_33.spec b/dlls/d3dx9_33/d3dx9_33.spec
|
||||
index af5624c..4d24919 100644
|
||||
--- a/dlls/d3dx9_33/d3dx9_33.spec
|
||||
+++ b/dlls/d3dx9_33/d3dx9_33.spec
|
||||
@@ -267,7 +267,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_34/d3dx9_34.spec b/dlls/d3dx9_34/d3dx9_34.spec
|
||||
index af5624c..4d24919 100644
|
||||
--- a/dlls/d3dx9_34/d3dx9_34.spec
|
||||
+++ b/dlls/d3dx9_34/d3dx9_34.spec
|
||||
@@ -267,7 +267,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_35/d3dx9_35.spec b/dlls/d3dx9_35/d3dx9_35.spec
|
||||
index af5624c..4d24919 100644
|
||||
--- a/dlls/d3dx9_35/d3dx9_35.spec
|
||||
+++ b/dlls/d3dx9_35/d3dx9_35.spec
|
||||
@@ -267,7 +267,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_36/math.c b/dlls/d3dx9_36/math.c
|
||||
index 8909c3c..bc1a7fc 100644
|
||||
--- a/dlls/d3dx9_36/math.c
|
||||
+++ b/dlls/d3dx9_36/math.c
|
||||
@@ -3007,6 +3007,20 @@ static void rotate_X(FLOAT *out, UINT order, FLOAT a, FLOAT *in)
|
||||
out[35] = 0.9057110548f * in[31] - 0.4192627370f * in[33] + 0.0624999329f * in[35];
|
||||
}
|
||||
|
||||
+HRESULT WINAPI D3DXSHProjectCubeMap(UINT order, IDirect3DCubeTexture9 *cubemap, FLOAT *rout, FLOAT *gout, FLOAT *bout)
|
||||
+{
|
||||
+ FIXME("order %u, cubemap %p, rout %p, gout %p, bout %p: stub!\n", order, cubemap, rout, gout, bout);
|
||||
+
|
||||
+ if(!cubemap || order < D3DXSH_MINORDER || order > D3DXSH_MAXORDER)
|
||||
+ return D3DERR_INVALIDCALL;
|
||||
+
|
||||
+ *rout = 0.0f;
|
||||
+ *gout = 0.0f;
|
||||
+ *bout = 0.0f;
|
||||
+
|
||||
+ return D3D_OK;
|
||||
+}
|
||||
+
|
||||
FLOAT* WINAPI D3DXSHRotate(FLOAT *out, UINT order, const D3DXMATRIX *matrix, const FLOAT *in)
|
||||
{
|
||||
FLOAT alpha, beta, gamma, sinb, temp[36], temp1[36];
|
||||
diff --git a/dlls/d3dx9_37/d3dx9_37.spec b/dlls/d3dx9_37/d3dx9_37.spec
|
||||
index de8b12c..10395ff 100644
|
||||
--- a/dlls/d3dx9_37/d3dx9_37.spec
|
||||
+++ b/dlls/d3dx9_37/d3dx9_37.spec
|
||||
@@ -269,7 +269,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_38/d3dx9_38.spec b/dlls/d3dx9_38/d3dx9_38.spec
|
||||
index de8b12c..10395ff 100644
|
||||
--- a/dlls/d3dx9_38/d3dx9_38.spec
|
||||
+++ b/dlls/d3dx9_38/d3dx9_38.spec
|
||||
@@ -269,7 +269,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_39/d3dx9_39.spec b/dlls/d3dx9_39/d3dx9_39.spec
|
||||
index de8b12c..10395ff 100644
|
||||
--- a/dlls/d3dx9_39/d3dx9_39.spec
|
||||
+++ b/dlls/d3dx9_39/d3dx9_39.spec
|
||||
@@ -269,7 +269,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_40/d3dx9_40.spec b/dlls/d3dx9_40/d3dx9_40.spec
|
||||
index de8b12c..10395ff 100644
|
||||
--- a/dlls/d3dx9_40/d3dx9_40.spec
|
||||
+++ b/dlls/d3dx9_40/d3dx9_40.spec
|
||||
@@ -269,7 +269,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_41/d3dx9_41.spec b/dlls/d3dx9_41/d3dx9_41.spec
|
||||
index de8b12c..10395ff 100644
|
||||
--- a/dlls/d3dx9_41/d3dx9_41.spec
|
||||
+++ b/dlls/d3dx9_41/d3dx9_41.spec
|
||||
@@ -269,7 +269,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_42/d3dx9_42.spec b/dlls/d3dx9_42/d3dx9_42.spec
|
||||
index c3bd9d5..5524bd0 100644
|
||||
--- a/dlls/d3dx9_42/d3dx9_42.spec
|
||||
+++ b/dlls/d3dx9_42/d3dx9_42.spec
|
||||
@@ -262,7 +262,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/dlls/d3dx9_43/d3dx9_43.spec b/dlls/d3dx9_43/d3dx9_43.spec
|
||||
index c3bd9d5..5524bd0 100644
|
||||
--- a/dlls/d3dx9_43/d3dx9_43.spec
|
||||
+++ b/dlls/d3dx9_43/d3dx9_43.spec
|
||||
@@ -262,7 +262,7 @@
|
||||
@ stub D3DXSHMultiply6(ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSplitMeshSC(ptr long long ptr long ptr long long ptr ptr long ptr ptr ptr ptr ptr)
|
||||
@ stub D3DXSHPRTCompSuperCluster(ptr ptr long long ptr ptr)
|
||||
-@ stub D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
+@ stdcall D3DXSHProjectCubeMap(long ptr ptr ptr ptr)
|
||||
@ stdcall D3DXSHRotate(ptr long ptr ptr)
|
||||
@ stdcall D3DXSHRotateZ(ptr long float ptr)
|
||||
@ stdcall D3DXSHScale(ptr long ptr float)
|
||||
diff --git a/include/d3dx9math.h b/include/d3dx9math.h
|
||||
index bf03ca3..9296400d 100644
|
||||
--- a/include/d3dx9math.h
|
||||
+++ b/include/d3dx9math.h
|
||||
@@ -396,6 +396,7 @@ HRESULT WINAPI D3DXSHEvalSphericalLight(UINT order, const D3DXVECTOR3 *dir, FLOA
|
||||
FLOAT* WINAPI D3DXSHMultiply2(FLOAT *out, const FLOAT *a, const FLOAT *b);
|
||||
FLOAT* WINAPI D3DXSHMultiply3(FLOAT *out, const FLOAT *a, const FLOAT *b);
|
||||
FLOAT* WINAPI D3DXSHMultiply4(FLOAT *out, const FLOAT *a, const FLOAT *b);
|
||||
+HRESULT WINAPI D3DXSHProjectCubeMap(UINT order, IDirect3DCubeTexture9 *cubemap, FLOAT *rout, FLOAT *gout, FLOAT *bout);
|
||||
FLOAT* WINAPI D3DXSHRotate(FLOAT *out, UINT order, const D3DXMATRIX *matrix, const FLOAT *in);
|
||||
FLOAT* WINAPI D3DXSHRotateZ(FLOAT *out, UINT order, FLOAT angle, const FLOAT *in);
|
||||
FLOAT* WINAPI D3DXSHScale(FLOAT *out, UINT order, const FLOAT *a, const FLOAT scale);
|
||||
--
|
||||
1.9.1
|
||||
|
@@ -1 +0,0 @@
|
||||
Fixes: [46284] Add D3DXSHProjectCubeMap stub
|
@@ -1,4 +1,4 @@
|
||||
From b094a7cf3f804ea40e5bd05ad738c48b5464e0bb Mon Sep 17 00:00:00 2001
|
||||
From 8c78d1203c965927d0a0e6fcde31dd651cc704db Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Mon, 6 Oct 2014 05:06:06 +0200
|
||||
Subject: [PATCH] dbghelp: Always check for debug symbols in BINDIR.
|
||||
@@ -9,7 +9,7 @@ Subject: [PATCH] dbghelp: Always check for debug symbols in BINDIR.
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/dbghelp/Makefile.in b/dlls/dbghelp/Makefile.in
|
||||
index 22be2612eeb..f3f31eb3671 100644
|
||||
index 22be2612eeb..2e11bb2b62d 100644
|
||||
--- a/dlls/dbghelp/Makefile.in
|
||||
+++ b/dlls/dbghelp/Makefile.in
|
||||
@@ -2,7 +2,7 @@ MODULE = dbghelp.dll
|
||||
@@ -22,10 +22,10 @@ index 22be2612eeb..f3f31eb3671 100644
|
||||
|
||||
C_SRCS = \
|
||||
diff --git a/dlls/dbghelp/elf_module.c b/dlls/dbghelp/elf_module.c
|
||||
index 553b212c526..3584a27953e 100644
|
||||
index 404c7c11dbb..e0779e4e3a7 100644
|
||||
--- a/dlls/dbghelp/elf_module.c
|
||||
+++ b/dlls/dbghelp/elf_module.c
|
||||
@@ -1451,6 +1451,7 @@ static BOOL elf_search_and_load_file(struct process* pcs, const WCHAR* filename,
|
||||
@@ -1445,6 +1445,7 @@ static BOOL elf_search_and_load_file(struct process* pcs, const WCHAR* filename,
|
||||
load_elf.elf_info = elf_info;
|
||||
|
||||
ret = search_unix_path(filename, process_getenv(pcs, L"LD_LIBRARY_PATH"), elf_load_file_cb, &load_elf)
|
||||
@@ -34,5 +34,5 @@ index 553b212c526..3584a27953e 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,18 +1,18 @@
|
||||
From ef0da9342b0ced44da1ed8532941d53f48ead602 Mon Sep 17 00:00:00 2001
|
||||
From e7104770d4b57539d5b64a67212504910692e920 Mon Sep 17 00:00:00 2001
|
||||
From: Jetro Jormalainen <jje-wine@jv.jetro.fi>
|
||||
Date: Tue, 30 Apr 2019 09:20:54 +1000
|
||||
Subject: [PATCH] dinput: Allow empty Joystick mappings.
|
||||
|
||||
---
|
||||
dlls/dinput/device.c | 77 ++++++++++++++++++++++++++++++-------
|
||||
dlls/dinput8/tests/device.c | 50 ++++++++++++++++++++++++
|
||||
dlls/dinput/tests/device8.c | 50 ++++++++++++++++++++++++
|
||||
2 files changed, 113 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c
|
||||
index b423337c9ce..c9466655ce4 100644
|
||||
index 6cc190ee7fb..2fd9329aa68 100644
|
||||
--- a/dlls/dinput/device.c
|
||||
+++ b/dlls/dinput/device.c
|
||||
@@ -356,12 +356,26 @@ static DWORD semantic_to_obj_id( struct dinput_device *This, DWORD dwSemantic )
|
||||
@@ -364,12 +364,26 @@ static DWORD semantic_to_obj_id( struct dinput_device *This, DWORD dwSemantic )
|
||||
return type | (0x0000ff00 & (instance << 8));
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
{
|
||||
static const WCHAR *subkey = L"Software\\Wine\\DirectInput\\Mappings\\%s\\%s\\%s";
|
||||
HKEY hkey;
|
||||
@@ -372,8 +386,11 @@ static HKEY get_mapping_key(const WCHAR *device, const WCHAR *username, const WC
|
||||
@@ -380,8 +394,11 @@ static HKEY get_mapping_key(const WCHAR *device, const WCHAR *username, const WC
|
||||
swprintf( keyname, len, subkey, username, device, guid );
|
||||
|
||||
/* The key used is HKCU\Software\Wine\DirectInput\Mappings\[username]\[device]\[mapping_guid] */
|
||||
@@ -54,7 +54,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
free( keyname );
|
||||
|
||||
@@ -393,7 +410,9 @@ static HRESULT save_mapping_settings(IDirectInputDevice8W *iface, LPDIACTIONFORM
|
||||
@@ -401,7 +418,9 @@ static HRESULT save_mapping_settings(IDirectInputDevice8W *iface, LPDIACTIONFORM
|
||||
if (StringFromCLSID(&lpdiaf->guidActionMap, &guid_str) != S_OK)
|
||||
return DI_SETTINGSNOTSAVED;
|
||||
|
||||
@@ -65,7 +65,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
if (!hkey)
|
||||
{
|
||||
@@ -428,7 +447,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -436,7 +455,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
HKEY hkey;
|
||||
WCHAR *guid_str;
|
||||
DIDEVICEINSTANCEW didev;
|
||||
@@ -74,7 +74,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
didev.dwSize = sizeof(didev);
|
||||
IDirectInputDevice8_GetDeviceInfo(&This->IDirectInputDevice8W_iface, &didev);
|
||||
@@ -436,7 +455,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -444,7 +463,7 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
if (StringFromCLSID(&lpdiaf->guidActionMap, &guid_str) != S_OK)
|
||||
return FALSE;
|
||||
|
||||
@@ -83,7 +83,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
if (!hkey)
|
||||
{
|
||||
@@ -456,15 +475,20 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
@@ -464,15 +483,20 @@ static BOOL load_mapping_settings( struct dinput_device *This, LPDIACTIONFORMATW
|
||||
{
|
||||
lpdiaf->rgoAction[i].dwObjID = id;
|
||||
lpdiaf->rgoAction[i].guidInstance = didev.guidInstance;
|
||||
@@ -107,7 +107,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
}
|
||||
|
||||
static BOOL set_app_data( struct dinput_device *dev, int offset, UINT_PTR app_data )
|
||||
@@ -1607,13 +1631,18 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
@@ -1935,13 +1959,18 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
load_success = load_mapping_settings( impl, format, username_buf );
|
||||
}
|
||||
|
||||
@@ -130,7 +130,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
genre = format->rgoAction[i].dwSemantic & DIGENRE_ANY;
|
||||
if (devMask == genre || (devMask == DIGENRE_ANY && genre != DIMOUSE_MASK && genre != DIKEYBOARD_MASK))
|
||||
{
|
||||
@@ -1645,6 +1674,14 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
@@ -1973,6 +2002,14 @@ static HRESULT WINAPI dinput_device_BuildActionMap( IDirectInputDevice8W *iface,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -144,8 +144,8 @@ index b423337c9ce..c9466655ce4 100644
|
||||
+
|
||||
if (!has_actions) return DI_NOEFFECT;
|
||||
if (flags & (DIDBAM_DEFAULT|DIDBAM_PRESERVE|DIDBAM_INITIALIZE|DIDBAM_HWDEFAULTS))
|
||||
FIXME("Unimplemented flags %#x\n", flags);
|
||||
@@ -1662,6 +1699,7 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
FIXME( "Unimplemented flags %#lx\n", flags );
|
||||
@@ -1990,6 +2027,7 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
DIPROPSTRING dps;
|
||||
WCHAR username_buf[MAX_PATH];
|
||||
DWORD username_len = MAX_PATH;
|
||||
@@ -153,7 +153,7 @@ index b423337c9ce..c9466655ce4 100644
|
||||
int i, action = 0, num_actions = 0;
|
||||
unsigned int offset = 0;
|
||||
const DIDATAFORMAT *df;
|
||||
@@ -1694,12 +1732,23 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
@@ -2022,12 +2060,23 @@ static HRESULT WINAPI dinput_device_SetActionMap( IDirectInputDevice8W *iface, D
|
||||
data_format.dwFlags = DIDF_RELAXIS;
|
||||
data_format.dwDataSize = format->dwDataSize;
|
||||
|
||||
@@ -178,10 +178,10 @@ index b423337c9ce..c9466655ce4 100644
|
||||
|
||||
/* Construct the dataformat and actionmap */
|
||||
obj_df = malloc( sizeof(DIOBJECTDATAFORMAT) * num_actions );
|
||||
diff --git a/dlls/dinput8/tests/device.c b/dlls/dinput8/tests/device.c
|
||||
index 5ae9e225dc9..d3e86c68176 100644
|
||||
--- a/dlls/dinput8/tests/device.c
|
||||
+++ b/dlls/dinput8/tests/device.c
|
||||
diff --git a/dlls/dinput/tests/device8.c b/dlls/dinput/tests/device8.c
|
||||
index 2586736cb1d..e2be36ad7d3 100644
|
||||
--- a/dlls/dinput/tests/device8.c
|
||||
+++ b/dlls/dinput/tests/device8.c
|
||||
@@ -48,6 +48,8 @@ struct enum_data {
|
||||
/* Dummy GUID */
|
||||
static const GUID ACTION_MAPPING_GUID = { 0x1, 0x2, 0x3, { 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb } };
|
||||
@@ -193,7 +193,7 @@ index 5ae9e225dc9..d3e86c68176 100644
|
||||
DITEST_BUTTON,
|
||||
@@ -472,6 +474,17 @@ static void test_action_mapping(void)
|
||||
hr = IDirectInputDevice8_SetActionMap(data.keyboard, data.lpdiaf, NULL, 0);
|
||||
ok (hr == DI_NOEFFECT, "SetActionMap should have no effect with no actions to map hr=%08x\n", hr);
|
||||
ok (hr == DI_NOEFFECT, "SetActionMap should have no effect with no actions to map hr=%#lx\n", hr);
|
||||
|
||||
+ /* Test that after changing actionformat SetActionMap has effect and that second
|
||||
+ * SetActionMap call with same empty actionformat has no effect */
|
||||
@@ -210,7 +210,7 @@ index 5ae9e225dc9..d3e86c68176 100644
|
||||
af.dwNumActions = ARRAY_SIZE(actionMapping);
|
||||
|
||||
@@ -663,6 +676,43 @@ static void test_save_settings(void)
|
||||
"Mapped incorrectly expected: 0x%08x got: 0x%08x\n", other_results[1], af.rgoAction[1].dwObjID);
|
||||
"Mapped incorrectly expected: 0x%#lx got: 0x%#lx\n", other_results[1], af.rgoAction[1].dwObjID);
|
||||
ok (IsEqualGUID(&GUID_SysKeyboard, &af.rgoAction[1].guidInstance), "Action should be mapped to keyboard\n");
|
||||
|
||||
+ /* Save and load empty mapping */
|
||||
@@ -254,5 +254,5 @@ index 5ae9e225dc9..d3e86c68176 100644
|
||||
IDirectInput_Release(pDI);
|
||||
}
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 0c01c25728780e3419f37ef612b14cc7e29f65f5 Mon Sep 17 00:00:00 2001
|
||||
From 8c7187f5501fff70df81612dfbdd084e67605189 Mon Sep 17 00:00:00 2001
|
||||
From: Lucian Poston <lucianposton@pm.me>
|
||||
Date: Mon, 21 May 2018 18:13:00 -0700
|
||||
Subject: [PATCH] dwrite: Use font fallback when mapping characters
|
||||
@@ -11,10 +11,10 @@ Signed-off-by: Lucian Poston <lucianposton@pm.me>
|
||||
3 files changed, 74 insertions(+), 63 deletions(-)
|
||||
|
||||
diff --git a/dlls/dwrite/analyzer.c b/dlls/dwrite/analyzer.c
|
||||
index 7112ca71932..43f8c659bfd 100644
|
||||
index 13ccf8e4434..c535b0cf49d 100644
|
||||
--- a/dlls/dwrite/analyzer.c
|
||||
+++ b/dlls/dwrite/analyzer.c
|
||||
@@ -2088,6 +2088,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2094,6 +2094,7 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
IDWriteFont **mapped_font)
|
||||
{
|
||||
const struct fallback_mapping *mapping;
|
||||
@@ -22,7 +22,7 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
HRESULT hr;
|
||||
UINT32 i;
|
||||
|
||||
@@ -2099,9 +2100,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
@@ -2105,9 +2106,15 @@ static HRESULT fallback_get_fallback_font(struct dwrite_fontfallback *fallback,
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
weight, style, stretch, mapped_font);
|
||||
if (hr == S_OK) {
|
||||
TRACE("Created fallback font using family %s.\n", debugstr_w(mapping->families[i]));
|
||||
@@ -2158,32 +2165,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
@@ -2164,32 +2171,66 @@ static HRESULT WINAPI fontfallback_MapCharacters(IDWriteFontFallback1 *iface, ID
|
||||
|
||||
if (basefamily && *basefamily) {
|
||||
hr = create_matching_font(basecollection, basefamily, weight, style, stretch, ret_font);
|
||||
@@ -124,10 +124,10 @@ index 7112ca71932..43f8c659bfd 100644
|
||||
free(buff);
|
||||
return hr;
|
||||
diff --git a/dlls/dwrite/layout.c b/dlls/dwrite/layout.c
|
||||
index f28c71082c0..9a884824b76 100644
|
||||
index d4aa49c6a6c..cda50c20777 100644
|
||||
--- a/dlls/dwrite/layout.c
|
||||
+++ b/dlls/dwrite/layout.c
|
||||
@@ -964,6 +964,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
@@ -725,6 +725,12 @@ static HRESULT layout_resolve_fonts(struct dwrite_textlayout *layout)
|
||||
goto fatal;
|
||||
}
|
||||
|
||||
@@ -141,10 +141,10 @@ index f28c71082c0..9a884824b76 100644
|
||||
IDWriteFont_Release(font);
|
||||
if (FAILED(hr)) {
|
||||
diff --git a/dlls/dwrite/tests/layout.c b/dlls/dwrite/tests/layout.c
|
||||
index a1bff0d26d6..929d6ec1cc2 100644
|
||||
index 096fc554253..b622aeb4239 100644
|
||||
--- a/dlls/dwrite/tests/layout.c
|
||||
+++ b/dlls/dwrite/tests/layout.c
|
||||
@@ -3368,35 +3368,23 @@ todo_wine
|
||||
@@ -3368,35 +3368,23 @@ static void test_GetMetrics(void)
|
||||
|
||||
count = 0;
|
||||
hr = IDWriteTextLayout_GetClusterMetrics(layout, clusters, 4, &count);
|
||||
@@ -189,7 +189,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -202,7 +202,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 3, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
- IDWriteFont_Release(font);
|
||||
@@ -222,7 +222,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -239,7 +239,7 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
ok(mappedlength == 1, "got %u\n", mappedlength);
|
||||
-}
|
||||
ok(scale == 1.0f, "got %f\n", scale);
|
||||
-todo_wine
|
||||
- todo_wine
|
||||
ok(font != NULL, "got %p\n", font);
|
||||
-if (font) {
|
||||
IDWriteFont_Release(font);
|
||||
@@ -304,5 +304,5 @@ index a1bff0d26d6..929d6ec1cc2 100644
|
||||
IDWriteTextLayout_Release(layout);
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 5f823452dba72254c36a68c974528b83cb5c50b6 Mon Sep 17 00:00:00 2001
|
||||
From 9ab2897d8c05a9950ce14200d1d7f374a31ee886 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Fri, 8 Jun 2018 18:51:40 -0500
|
||||
Subject: [PATCH] server: Add an object operation to grab the esync file
|
||||
@@ -38,11 +38,12 @@ Split off to decrease patch size.
|
||||
server/thread.c | 3 +++
|
||||
server/timer.c | 1 +
|
||||
server/token.c | 1 +
|
||||
server/window.c | 1 +
|
||||
server/winstation.c | 2 ++
|
||||
33 files changed, 67 insertions(+)
|
||||
34 files changed, 68 insertions(+)
|
||||
|
||||
diff --git a/server/async.c b/server/async.c
|
||||
index 1a564ff1a69..0b8e1ba1fd9 100644
|
||||
index 7aef28355f0..7ac675f75c4 100644
|
||||
--- a/server/async.c
|
||||
+++ b/server/async.c
|
||||
@@ -77,6 +77,7 @@ static const struct object_ops async_ops =
|
||||
@@ -53,7 +54,7 @@ index 1a564ff1a69..0b8e1ba1fd9 100644
|
||||
async_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
@@ -587,6 +588,7 @@ static const struct object_ops iosb_ops =
|
||||
@@ -586,6 +587,7 @@ static const struct object_ops iosb_ops =
|
||||
no_add_queue, /* add_queue */
|
||||
NULL, /* remove_queue */
|
||||
NULL, /* signaled */
|
||||
@@ -74,7 +75,7 @@ index ff0799f5880..d9824de8eac 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/change.c b/server/change.c
|
||||
index a01d6894151..782801e8e1d 100644
|
||||
index 325782d8197..90d5bfa3019 100644
|
||||
--- a/server/change.c
|
||||
+++ b/server/change.c
|
||||
@@ -112,6 +112,7 @@ static const struct object_ops dir_ops =
|
||||
@@ -110,7 +111,7 @@ index 6933195e72d..3d4be86a212 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/console.c b/server/console.c
|
||||
index 136c14862e3..e7c97e99579 100644
|
||||
index 5407fba1411..ef6bcb12f5a 100644
|
||||
--- a/server/console.c
|
||||
+++ b/server/console.c
|
||||
@@ -81,6 +81,7 @@ static const struct object_ops console_ops =
|
||||
@@ -278,7 +279,7 @@ index f1b79b1b35e..c727bfdd1ba 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/fd.c b/server/fd.c
|
||||
index 45a1b226f33..b0e98909fa6 100644
|
||||
index cd8f7171e6e..a61c09559fe 100644
|
||||
--- a/server/fd.c
|
||||
+++ b/server/fd.c
|
||||
@@ -212,6 +212,7 @@ static const struct object_ops fd_ops =
|
||||
@@ -314,10 +315,10 @@ index 45a1b226f33..b0e98909fa6 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/file.c b/server/file.c
|
||||
index 3079afdbdfd..30db0450a3f 100644
|
||||
index 090d6c244f7..7edf612de73 100644
|
||||
--- a/server/file.c
|
||||
+++ b/server/file.c
|
||||
@@ -94,6 +94,7 @@ static const struct object_ops file_ops =
|
||||
@@ -123,6 +123,7 @@ static const struct object_ops file_ops =
|
||||
add_queue, /* add_queue */
|
||||
remove_queue, /* remove_queue */
|
||||
default_fd_signaled, /* signaled */
|
||||
@@ -326,7 +327,7 @@ index 3079afdbdfd..30db0450a3f 100644
|
||||
no_signal, /* signal */
|
||||
file_get_fd, /* get_fd */
|
||||
diff --git a/server/handle.c b/server/handle.c
|
||||
index bc692b8ebeb..c280335611c 100644
|
||||
index 38ad80da267..53cc1e4eb43 100644
|
||||
--- a/server/handle.c
|
||||
+++ b/server/handle.c
|
||||
@@ -126,6 +126,7 @@ static const struct object_ops handle_table_ops =
|
||||
@@ -386,7 +387,7 @@ index 2d8697ec9bd..4cf9b73f784 100644
|
||||
no_signal, /* signal */
|
||||
mailslot_device_file_get_fd, /* get_fd */
|
||||
diff --git a/server/mapping.c b/server/mapping.c
|
||||
index bc9ed5bdcb9..6cd123f6aa9 100644
|
||||
index 8d4332d240f..1a8d480cfa9 100644
|
||||
--- a/server/mapping.c
|
||||
+++ b/server/mapping.c
|
||||
@@ -67,6 +67,7 @@ static const struct object_ops ranges_ops =
|
||||
@@ -470,7 +471,7 @@ index 3e6cf09d4f2..b8ec17a787a 100644
|
||||
no_signal, /* signal */
|
||||
named_pipe_device_file_get_fd, /* get_fd */
|
||||
diff --git a/server/object.h b/server/object.h
|
||||
index f156f1d2f13..c98e45125a0 100644
|
||||
index f6ad9e8ccdd..f4261d0d585 100644
|
||||
--- a/server/object.h
|
||||
+++ b/server/object.h
|
||||
@@ -78,6 +78,8 @@ struct object_ops
|
||||
@@ -483,7 +484,7 @@ index f156f1d2f13..c98e45125a0 100644
|
||||
void (*satisfied)(struct object *,struct wait_queue_entry *);
|
||||
/* signal an object */
|
||||
diff --git a/server/process.c b/server/process.c
|
||||
index 0cc7f6b60ee..c502a58f9a2 100644
|
||||
index 60cc03032b2..c79a574d137 100644
|
||||
--- a/server/process.c
|
||||
+++ b/server/process.c
|
||||
@@ -105,6 +105,7 @@ static const struct object_ops process_ops =
|
||||
@@ -511,7 +512,7 @@ index 0cc7f6b60ee..c502a58f9a2 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/queue.c b/server/queue.c
|
||||
index bcb2f237074..6daa12958ca 100644
|
||||
index 051aafc6c3d..375b3e33a6e 100644
|
||||
--- a/server/queue.c
|
||||
+++ b/server/queue.c
|
||||
@@ -173,6 +173,7 @@ static const struct object_ops msg_queue_ops =
|
||||
@@ -531,7 +532,7 @@ index bcb2f237074..6daa12958ca 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/registry.c b/server/registry.c
|
||||
index b00abdbc004..8652576ec3f 100644
|
||||
index 93e8a309593..32a424cd842 100644
|
||||
--- a/server/registry.c
|
||||
+++ b/server/registry.c
|
||||
@@ -178,6 +178,7 @@ static const struct object_ops key_ops =
|
||||
@@ -591,7 +592,7 @@ index 19b76d44c16..55cd6aa037e 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/sock.c b/server/sock.c
|
||||
index 2df4f3d3056..3cc06db8225 100644
|
||||
index 512b7c0f78e..7a8be919494 100644
|
||||
--- a/server/sock.c
|
||||
+++ b/server/sock.c
|
||||
@@ -249,6 +249,7 @@ static const struct object_ops sock_ops =
|
||||
@@ -602,7 +603,7 @@ index 2df4f3d3056..3cc06db8225 100644
|
||||
no_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
sock_get_fd, /* get_fd */
|
||||
@@ -3114,6 +3115,7 @@ static const struct object_ops ifchange_ops =
|
||||
@@ -3124,6 +3125,7 @@ static const struct object_ops ifchange_ops =
|
||||
no_add_queue, /* add_queue */
|
||||
NULL, /* remove_queue */
|
||||
NULL, /* signaled */
|
||||
@@ -610,7 +611,7 @@ index 2df4f3d3056..3cc06db8225 100644
|
||||
no_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
ifchange_get_fd, /* get_fd */
|
||||
@@ -3335,6 +3337,7 @@ static const struct object_ops socket_device_ops =
|
||||
@@ -3345,6 +3347,7 @@ static const struct object_ops socket_device_ops =
|
||||
no_add_queue, /* add_queue */
|
||||
NULL, /* remove_queue */
|
||||
NULL, /* signaled */
|
||||
@@ -671,10 +672,10 @@ index 96dc9d00ca1..f59902d5607 100644
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/token.c b/server/token.c
|
||||
index 820a7a0e07d..e42c1a159e3 100644
|
||||
index dcb2a879ba6..76a6bc279a5 100644
|
||||
--- a/server/token.c
|
||||
+++ b/server/token.c
|
||||
@@ -163,6 +163,7 @@ static const struct object_ops token_ops =
|
||||
@@ -150,6 +150,7 @@ static const struct object_ops token_ops =
|
||||
no_add_queue, /* add_queue */
|
||||
NULL, /* remove_queue */
|
||||
NULL, /* signaled */
|
||||
@@ -682,8 +683,20 @@ index 820a7a0e07d..e42c1a159e3 100644
|
||||
NULL, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/window.c b/server/window.c
|
||||
index 24059aac0fe..a79fda5ad80 100644
|
||||
--- a/server/window.c
|
||||
+++ b/server/window.c
|
||||
@@ -108,6 +108,7 @@ static const struct object_ops window_ops =
|
||||
no_add_queue, /* add_queue */
|
||||
NULL, /* remove_queue */
|
||||
NULL, /* signaled */
|
||||
+ NULL, /* get_esync_fd */
|
||||
NULL, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
diff --git a/server/winstation.c b/server/winstation.c
|
||||
index 854affead77..1535321da2d 100644
|
||||
index 1408e1a9e65..a99c60a28ff 100644
|
||||
--- a/server/winstation.c
|
||||
+++ b/server/winstation.c
|
||||
@@ -75,6 +75,7 @@ static const struct object_ops winstation_ops =
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 24fa0367db3de31fdc2da7bd61c27699c091cdaa Mon Sep 17 00:00:00 2001
|
||||
From 3e714e2eb10fe17f12b747731c0ce7e18fd4b7a0 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 15:11:12 -0500
|
||||
Subject: [PATCH] server: Create eventfd file descriptors for process objects.
|
||||
@@ -49,7 +49,7 @@ index 7ca4ca89394..6a0a367124d 100644
|
||||
void esync_init(void);
|
||||
+int esync_create_fd( int initval, int flags );
|
||||
diff --git a/server/process.c b/server/process.c
|
||||
index ca9844c5c90..eca2f8f4bca 100644
|
||||
index da972a41955..91b26d00ec0 100644
|
||||
--- a/server/process.c
|
||||
+++ b/server/process.c
|
||||
@@ -63,6 +63,7 @@
|
||||
@@ -86,7 +86,7 @@ index ca9844c5c90..eca2f8f4bca 100644
|
||||
list_init( &process->thread_list );
|
||||
list_init( &process->locks );
|
||||
@@ -741,6 +744,9 @@ struct process *create_process( int fd, struct process *parent, unsigned int fla
|
||||
if (!token_assign_label( process->token, security_high_label_sid ))
|
||||
if (!token_assign_label( process->token, &high_label_sid ))
|
||||
goto error;
|
||||
|
||||
+ if (do_esync())
|
||||
|
@@ -1,17 +1,17 @@
|
||||
From 2da453ad472ce69926e158bd4e933facd985d1cd Mon Sep 17 00:00:00 2001
|
||||
From a273680e7cbdc66e9fdb6fd6482803ddfed94dca Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <zfigura@codeweavers.com>
|
||||
Date: Mon, 6 Jul 2020 16:01:56 -0500
|
||||
Subject: [PATCH] server: Create eventfd file descriptors for message queues.
|
||||
|
||||
---
|
||||
server/queue.c | 22 +++++++++++++++++++++-
|
||||
1 file changed, 21 insertions(+), 1 deletion(-)
|
||||
server/queue.c | 29 ++++++++++++++++++++++++++++-
|
||||
1 file changed, 28 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/server/queue.c b/server/queue.c
|
||||
index 1f1392387df..d34bc284d08 100644
|
||||
index b6decc521e9..e70c0f5ad81 100644
|
||||
--- a/server/queue.c
|
||||
+++ b/server/queue.c
|
||||
@@ -43,6 +43,7 @@
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "process.h"
|
||||
#include "request.h"
|
||||
#include "user.h"
|
||||
@@ -19,7 +19,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
|
||||
#define WM_NCMOUSEFIRST WM_NCMOUSEMOVE
|
||||
#define WM_NCMOUSELAST (WM_NCMOUSEFIRST+(WM_MOUSELAST-WM_MOUSEFIRST))
|
||||
@@ -144,6 +145,7 @@ struct msg_queue
|
||||
@@ -142,6 +143,7 @@ struct msg_queue
|
||||
timeout_t last_get_msg; /* time of last get message call */
|
||||
int keystate_lock; /* owns an input keystate lock */
|
||||
unsigned int ignore_post_msg; /* ignore post messages newer than this unique id */
|
||||
@@ -27,7 +27,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
};
|
||||
|
||||
struct hotkey
|
||||
@@ -160,6 +162,7 @@ static void msg_queue_dump( struct object *obj, int verbose );
|
||||
@@ -158,6 +160,7 @@ static void msg_queue_dump( struct object *obj, int verbose );
|
||||
static int msg_queue_add_queue( struct object *obj, struct wait_queue_entry *entry );
|
||||
static void msg_queue_remove_queue( struct object *obj, struct wait_queue_entry *entry );
|
||||
static int msg_queue_signaled( struct object *obj, struct wait_queue_entry *entry );
|
||||
@@ -35,7 +35,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
static void msg_queue_satisfied( struct object *obj, struct wait_queue_entry *entry );
|
||||
static void msg_queue_destroy( struct object *obj );
|
||||
static void msg_queue_poll_event( struct fd *fd, int event );
|
||||
@@ -175,7 +178,7 @@ static const struct object_ops msg_queue_ops =
|
||||
@@ -173,7 +176,7 @@ static const struct object_ops msg_queue_ops =
|
||||
msg_queue_add_queue, /* add_queue */
|
||||
msg_queue_remove_queue, /* remove_queue */
|
||||
msg_queue_signaled, /* signaled */
|
||||
@@ -44,7 +44,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
msg_queue_satisfied, /* satisfied */
|
||||
no_signal, /* signal */
|
||||
no_get_fd, /* get_fd */
|
||||
@@ -315,12 +318,16 @@ static struct msg_queue *create_msg_queue( struct thread *thread, struct thread_
|
||||
@@ -313,12 +316,16 @@ static struct msg_queue *create_msg_queue( struct thread *thread, struct thread_
|
||||
queue->last_get_msg = current_time;
|
||||
queue->keystate_lock = 0;
|
||||
queue->ignore_post_msg = 0;
|
||||
@@ -61,7 +61,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
thread->queue = queue;
|
||||
}
|
||||
if (new_input) release_object( new_input );
|
||||
@@ -534,6 +541,9 @@ static inline void clear_queue_bits( struct msg_queue *queue, unsigned int bits
|
||||
@@ -533,6 +540,9 @@ static inline void clear_queue_bits( struct msg_queue *queue, unsigned int bits
|
||||
if (queue->keystate_lock) unlock_input_keystate( queue->input );
|
||||
queue->keystate_lock = 0;
|
||||
}
|
||||
@@ -71,7 +71,7 @@ index 1f1392387df..d34bc284d08 100644
|
||||
}
|
||||
|
||||
/* check whether msg is a keyboard message */
|
||||
@@ -1047,6 +1057,13 @@ static int msg_queue_signaled( struct object *obj, struct wait_queue_entry *entr
|
||||
@@ -1046,6 +1056,13 @@ static int msg_queue_signaled( struct object *obj, struct wait_queue_entry *entr
|
||||
return ret || is_signaled( queue );
|
||||
}
|
||||
|
||||
@@ -85,7 +85,17 @@ index 1f1392387df..d34bc284d08 100644
|
||||
static void msg_queue_satisfied( struct object *obj, struct wait_queue_entry *entry )
|
||||
{
|
||||
struct msg_queue *queue = (struct msg_queue *)obj;
|
||||
@@ -2425,6 +2442,9 @@ DECL_HANDLER(get_queue_status)
|
||||
@@ -2485,6 +2502,9 @@ DECL_HANDLER(set_queue_mask)
|
||||
if (req->skip_wait) queue->wake_mask = queue->changed_mask = 0;
|
||||
else wake_up( &queue->obj, 0 );
|
||||
}
|
||||
+
|
||||
+ if (do_esync() && !is_signaled( queue ))
|
||||
+ esync_clear( queue->esync_fd );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2498,6 +2518,9 @@ DECL_HANDLER(get_queue_status)
|
||||
reply->wake_bits = queue->wake_bits;
|
||||
reply->changed_bits = queue->changed_bits;
|
||||
queue->changed_bits &= ~req->clear_bits;
|
||||
@@ -95,6 +105,17 @@ index 1f1392387df..d34bc284d08 100644
|
||||
}
|
||||
else reply->wake_bits = reply->changed_bits = 0;
|
||||
}
|
||||
@@ -2746,6 +2769,10 @@ DECL_HANDLER(get_message)
|
||||
queue->wake_mask = req->wake_mask;
|
||||
queue->changed_mask = req->changed_mask;
|
||||
set_error( STATUS_PENDING ); /* FIXME */
|
||||
+
|
||||
+ if (do_esync() && !is_signaled( queue ))
|
||||
+ esync_clear( queue->esync_fd );
|
||||
+
|
||||
return;
|
||||
|
||||
found_msg:
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 1dc7cd6e5621505199c8ff8ad8f4e67845c478e3 Mon Sep 17 00:00:00 2001
|
||||
From ba211cf9d8ca7a462c24a62334813c68d41b3fc0 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Mon, 30 Aug 2021 15:16:06 +1000
|
||||
Subject: [PATCH] ntoskrnl.exe: Add FltBuildDefaultSecurityDescriptor test
|
||||
@@ -10,10 +10,10 @@ Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
2 files changed, 66 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntoskrnl.exe/tests/Makefile.in b/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
index ab1db85adbb..9c89e44e70a 100644
|
||||
index 052a8618a81..9028a392002 100644
|
||||
--- a/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
+++ b/dlls/ntoskrnl.exe/tests/Makefile.in
|
||||
@@ -1,7 +1,7 @@
|
||||
@@ -2,7 +2,7 @@ EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
TESTDLL = ntoskrnl.exe
|
||||
IMPORTS = advapi32 crypt32 newdev setupapi user32 wintrust ws2_32 hid
|
||||
|
||||
@@ -23,7 +23,7 @@ index ab1db85adbb..9c89e44e70a 100644
|
||||
driver2_IMPORTS = winecrt0 ntoskrnl hal
|
||||
driver2_EXTRADLLFLAGS = -nodefaultlibs -nostartfiles -Wl,--subsystem,native
|
||||
diff --git a/dlls/ntoskrnl.exe/tests/driver.c b/dlls/ntoskrnl.exe/tests/driver.c
|
||||
index deccc04bc2b..90f5b0ec965 100644
|
||||
index dabb3b73f15..187f00c8bcb 100644
|
||||
--- a/dlls/ntoskrnl.exe/tests/driver.c
|
||||
+++ b/dlls/ntoskrnl.exe/tests/driver.c
|
||||
@@ -32,6 +32,7 @@
|
||||
@@ -113,5 +113,5 @@ index deccc04bc2b..90f5b0ec965 100644
|
||||
IoMarkIrpPending(irp);
|
||||
IoQueueWorkItem(work_item, main_test_task, DelayedWorkQueue, irp);
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From eee60c1777c710cfcb4283922990a306361548ba Mon Sep 17 00:00:00 2001
|
||||
From c62655b9d54ce8b692bd84d41abe09cc40ae10e1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Mon, 5 Sep 2016 15:31:29 +0200
|
||||
Subject: [PATCH] inseng: Implement CIF reader and download functions.
|
||||
@@ -37,7 +37,7 @@ index 0217203791a..ba2388c97ed 100644
|
||||
IDL_SRCS = inseng_classes.idl
|
||||
diff --git a/dlls/inseng/icif.c b/dlls/inseng/icif.c
|
||||
new file mode 100644
|
||||
index 00000000000..11a91b86476
|
||||
index 00000000000..27f6f6dfd93
|
||||
--- /dev/null
|
||||
+++ b/dlls/inseng/icif.c
|
||||
@@ -0,0 +1,1745 @@
|
||||
@@ -301,7 +301,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifgroup *This = impl_from_ICifGroup(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, id, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, id, size);
|
||||
+
|
||||
+ return copy_substring_null(id, size, This->id);
|
||||
+}
|
||||
@@ -310,7 +310,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifgroup *This = impl_from_ICifGroup(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, desc, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, desc, size);
|
||||
+
|
||||
+ return copy_substring_null(desc, size, This->description);
|
||||
+}
|
||||
@@ -329,10 +329,10 @@ index 00000000000..11a91b86476
|
||||
+ struct cifgroup *This = impl_from_ICifGroup(iface);
|
||||
+ struct ciffile *file;
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, %p)\n", This, enum_components, filter, pv);
|
||||
+ TRACE("(%p)->(%p, %#lx, %p)\n", This, enum_components, filter, pv);
|
||||
+
|
||||
+ if (filter)
|
||||
+ FIXME("filter (%x) not supported\n", filter);
|
||||
+ FIXME("filter (%#lx) not supported\n", filter);
|
||||
+ if (pv)
|
||||
+ FIXME("how to handle pv (%p)?\n", pv);
|
||||
+
|
||||
@@ -390,7 +390,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, id, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, id, size);
|
||||
+
|
||||
+ return copy_substring_null(id, size, This->id);
|
||||
+}
|
||||
@@ -399,7 +399,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, guid, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, guid, size);
|
||||
+
|
||||
+ return copy_substring_null(guid, size, This->guid);
|
||||
+}
|
||||
@@ -408,7 +408,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, desc, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, desc, size);
|
||||
+
|
||||
+ return copy_substring_null(desc, size, This->description);
|
||||
+}
|
||||
@@ -417,7 +417,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, details, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, details, size);
|
||||
+
|
||||
+ return copy_substring_null(details, size, This->details);
|
||||
+}
|
||||
@@ -427,7 +427,7 @@ index 00000000000..11a91b86476
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+ struct url_info *entry;
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %p, %u, %p)\n", This, index, url, size, flags);
|
||||
+ TRACE("(%p)->(%u, %p, %lu, %p)\n", This, index, url, size, flags);
|
||||
+
|
||||
+ /* FIXME: check how functions behaves for url == NULL */
|
||||
+
|
||||
@@ -450,7 +450,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u, %p, %u): stub\n", This, index, list, size);
|
||||
+ FIXME("(%p)->(%u, %p, %lu): stub\n", This, index, list, size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -468,7 +468,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u, %p, %u, %p, %u, %p): stub\n", This, index, cmd, cmd_size, switches, switch_size, type);
|
||||
+ FIXME("(%p)->(%u, %p, %lu, %p, %lu, %p): stub\n", This, index, cmd, cmd_size, switches, switch_size, type);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -492,7 +492,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, locale, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, locale, size);
|
||||
+
|
||||
+ return copy_substring_null(locale, size, This->locale);
|
||||
+}
|
||||
@@ -501,7 +501,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, key, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, key, size);
|
||||
+
|
||||
+ return copy_substring_null(key, size, This->key_uninstall);
|
||||
+}
|
||||
@@ -543,7 +543,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, key, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, key, size);
|
||||
+
|
||||
+ return copy_substring_null(key, size, This->key_success);
|
||||
+}
|
||||
@@ -554,7 +554,7 @@ index 00000000000..11a91b86476
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, %p, %u): semi-stub\n", This, progress, progress_size, cancel, cancel_size);
|
||||
+ TRACE("(%p)->(%p, %lu, %p, %lu): semi-stub\n", This, progress, progress_size, cancel, cancel_size);
|
||||
+
|
||||
+ hr = copy_substring_null(progress, progress_size, This->key_progress);
|
||||
+ if (hr != S_OK) return hr;
|
||||
@@ -608,7 +608,7 @@ index 00000000000..11a91b86476
|
||||
+ ICifComponent *dependency;
|
||||
+ int pos = 0;
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %p, %u, %p, %p, %p)\n", This, index, id, id_size, type, ver, build);
|
||||
+ TRACE("(%p)->(%u, %p, %lu, %p, %p, %p)\n", This, index, id, id_size, type, ver, build);
|
||||
+
|
||||
+ if (!id || !ver || !build)
|
||||
+ return E_FAIL;
|
||||
@@ -652,7 +652,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u, %p, %u): stub\n", This, index, mode, size);
|
||||
+ FIXME("(%p)->(%u, %p, %lu): stub\n", This, index, mode, size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -661,7 +661,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, id, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, id, size);
|
||||
+
|
||||
+ return copy_substring_null(id, size, This->group);
|
||||
+}
|
||||
@@ -679,7 +679,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, id, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, id, size);
|
||||
+
|
||||
+ return copy_substring_null(id, size, This->patchid);
|
||||
+}
|
||||
@@ -688,7 +688,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%p, %u, %p, %u): stub\n", This, dll, dll_size, entry, entry_size);
|
||||
+ FIXME("(%p)->(%p, %lu, %p, %lu): stub\n", This, dll, dll_size, entry, entry_size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -697,7 +697,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u, %p, %u): stub\n", This, index, id, size);
|
||||
+ FIXME("(%p)->(%u, %p, %lu): stub\n", This, index, id, size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -706,7 +706,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%s, %p, %u): stub\n", This, debugstr_a(key), data, size);
|
||||
+ FIXME("(%p)->(%s, %p, %lu): stub\n", This, debugstr_a(key), data, size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -733,7 +733,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u, %u, %p, %p): stub\n", This, version, build, ret_version, ret_build);
|
||||
+ FIXME("(%p)->(%lu, %lu, %p, %p): stub\n", This, version, build, ret_version, ret_build);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
@@ -751,7 +751,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", This, state);
|
||||
+ TRACE("(%p)->(%lu)\n", This, state);
|
||||
+
|
||||
+ This->queue_state = state;
|
||||
+ return S_OK;
|
||||
@@ -780,7 +780,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct cifcomponent *This = impl_from_ICifComponent(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", This, priority);
|
||||
+ TRACE("(%p)->(%lu)\n", This, priority);
|
||||
+
|
||||
+ This->current_priority = priority;
|
||||
+ return S_OK;
|
||||
@@ -859,7 +859,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffenum_components *This = impl_from_IEnumCifComponents(iface);
|
||||
+ LONG ref = InterlockedIncrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ return ref;
|
||||
+}
|
||||
@@ -869,7 +869,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffenum_components *This = impl_from_IEnumCifComponents(iface);
|
||||
+ LONG ref = InterlockedDecrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ if(!ref)
|
||||
+ {
|
||||
@@ -983,7 +983,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffenum_groups *This = impl_from_IEnumCifGroups(iface);
|
||||
+ LONG ref = InterlockedIncrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ return ref;
|
||||
+}
|
||||
@@ -993,7 +993,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffenum_groups *This = impl_from_IEnumCifGroups(iface);
|
||||
+ LONG ref = InterlockedDecrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ if(!ref)
|
||||
+ {
|
||||
@@ -1092,7 +1092,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+ LONG ref = InterlockedIncrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ return ref;
|
||||
+}
|
||||
@@ -1102,7 +1102,7 @@ index 00000000000..11a91b86476
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+ LONG ref = InterlockedDecrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref=%d\n", This, ref);
|
||||
+ TRACE("(%p) ref=%ld\n", This, ref);
|
||||
+
|
||||
+ if(!ref)
|
||||
+ {
|
||||
@@ -1133,10 +1133,10 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, %p)\n", This, enum_components, filter, pv);
|
||||
+ TRACE("(%p)->(%p, %#lx, %p)\n", This, enum_components, filter, pv);
|
||||
+
|
||||
+ if (filter)
|
||||
+ FIXME("filter (%x) not supported\n", filter);
|
||||
+ FIXME("filter (%#lx) not supported\n", filter);
|
||||
+ if (pv)
|
||||
+ FIXME("how to handle pv (%p)?\n", pv);
|
||||
+
|
||||
@@ -1166,10 +1166,10 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, %p)\n", This, enum_groups, filter, pv);
|
||||
+ TRACE("(%p)->(%p, %#lx, %p)\n", This, enum_groups, filter, pv);
|
||||
+
|
||||
+ if (filter)
|
||||
+ FIXME("filter (%x) not supported\n", filter);
|
||||
+ FIXME("filter (%#lx) not supported\n", filter);
|
||||
+ if (pv)
|
||||
+ FIXME("how to handle pv (%p)?\n", pv);
|
||||
+
|
||||
@@ -1199,7 +1199,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%p, %u, %p): stub\n", This, cuf_modes, filter, pv);
|
||||
+ FIXME("(%p)->(%p, %lu, %p): stub\n", This, cuf_modes, filter, pv);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -1217,7 +1217,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u)\n", This, desc, size);
|
||||
+ TRACE("(%p)->(%p, %lu)\n", This, desc, size);
|
||||
+
|
||||
+ return copy_substring_null(desc, size, This->name);
|
||||
+}
|
||||
@@ -1226,7 +1226,7 @@ index 00000000000..11a91b86476
|
||||
+{
|
||||
+ struct ciffile *This = impl_from_ICiffile(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%p, %u): stub\n", This, dlls, size);
|
||||
+ FIXME("(%p)->(%p, %lu): stub\n", This, dlls, size);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -1728,7 +1728,7 @@ index 00000000000..11a91b86476
|
||||
+ else
|
||||
+ hr = process_section(file, section, section_name);
|
||||
+
|
||||
+ TRACE("finished processing section %s (%x)\n", debugstr_a(section_name), hr);
|
||||
+ TRACE("Finished processing section %s, hr %#lx.\n", debugstr_a(section_name), hr);
|
||||
+ heap_free(section_name);
|
||||
+ }
|
||||
+
|
||||
@@ -2249,7 +2249,7 @@ index 82c0b4d5fe1..7ae46fad3a7 100644
|
||||
+@ stdcall GetICifRWFileFromFile(ptr str)
|
||||
@ stub PurgeDownloadDirectory
|
||||
diff --git a/dlls/inseng/inseng_main.c b/dlls/inseng/inseng_main.c
|
||||
index 2c95a2e72bd..6a926ccb379 100644
|
||||
index c72a12955b8..87d11472ff0 100644
|
||||
--- a/dlls/inseng/inseng_main.c
|
||||
+++ b/dlls/inseng/inseng_main.c
|
||||
@@ -2,6 +2,7 @@
|
||||
@@ -2374,7 +2374,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+ LONG ref = InterlockedIncrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref = %d\n", This, ref);
|
||||
+ TRACE("(%p) ref = %ld\n", This, ref);
|
||||
+
|
||||
+ return ref;
|
||||
+}
|
||||
@@ -2384,7 +2384,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+ LONG ref = InterlockedDecrement(&This->ref);
|
||||
+
|
||||
+ TRACE("(%p) ref = %d\n", This, ref);
|
||||
+ TRACE("(%p) ref = %ld\n", This, ref);
|
||||
+
|
||||
+ if (!ref)
|
||||
+ {
|
||||
@@ -2402,7 +2402,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+{
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u %p)\n", This, reserved, pbind);
|
||||
+ TRACE("(%p)->(%lu %p)\n", This, reserved, pbind);
|
||||
+
|
||||
+ return S_OK;
|
||||
+}
|
||||
@@ -2420,7 +2420,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+{
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+
|
||||
+ FIXME("(%p)->(%u): stub\n", This, reserved);
|
||||
+ FIXME("(%p)->(%lu): stub\n", This, reserved);
|
||||
+
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@@ -2431,7 +2431,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+ HRESULT hr = S_OK;
|
||||
+
|
||||
+ TRACE("%p)->(%u %u %u %s)\n", This, progress, progress_max, status, debugstr_w(status_text));
|
||||
+ TRACE("%p)->(%lu %lu %lu %s)\n", This, progress, progress_max, status, debugstr_w(status_text));
|
||||
+
|
||||
+ switch(status)
|
||||
+ {
|
||||
@@ -2465,7 +2465,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+ break;
|
||||
+
|
||||
+ default:
|
||||
+ FIXME("Unsupported status %u\n", status);
|
||||
+ FIXME("Unsupported status %lu\n", status);
|
||||
+ }
|
||||
+
|
||||
+ return hr;
|
||||
@@ -2475,7 +2475,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+{
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%08x %s)\n", This, hresult, debugstr_w(szError));
|
||||
+ TRACE("(%p)->(%#lx %s)\n", This, hresult, debugstr_w(szError));
|
||||
+
|
||||
+ if (FAILED(hresult))
|
||||
+ {
|
||||
@@ -2518,7 +2518,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+{
|
||||
+ struct downloadcb *This = impl_from_IBindStatusCallback(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%08x %u %p %p)\n", This, grfBSCF, dwSize, pformatetc, pstgmed);
|
||||
+ TRACE("(%p)->(%#lx %lu %p %p)\n", This, grfBSCF, dwSize, pformatetc, pstgmed);
|
||||
+
|
||||
+ return S_OK;
|
||||
+}
|
||||
@@ -2602,7 +2602,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
|
||||
@@ -86,181 +385,726 @@ static ULONG WINAPI InstallEngine_Release(IInstallEngine2 *iface)
|
||||
|
||||
TRACE("(%p) ref=%d\n", This, ref);
|
||||
TRACE("(%p) ref=%ld\n", This, ref);
|
||||
|
||||
- if(!ref)
|
||||
+ if (!ref)
|
||||
@@ -3046,10 +3046,10 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
static HRESULT WINAPI InstallEngine_DownloadComponents(IInstallEngine2 *iface, DWORD flags)
|
||||
{
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%x)\n", This, flags);
|
||||
- FIXME("(%p)->(%lx)\n", This, flags);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ TRACE("(%p)->(%x)\n", This, flags);
|
||||
+ TRACE("(%p)->(%#lx)\n", This, flags);
|
||||
+
|
||||
+ /* The interface is not really threadsafe on windows, but we can at least prevent multiple installations */
|
||||
+ if (InterlockedCompareExchange((LONG *)&This->status, ENGINESTATUS_INSTALLING, ENGINESTATUS_READY) != ENGINESTATUS_READY)
|
||||
@@ -3064,9 +3064,9 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
static HRESULT WINAPI InstallEngine_InstallComponents(IInstallEngine2 *iface, DWORD flags)
|
||||
{
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%x)\n", This, flags);
|
||||
- FIXME("(%p)->(%lx)\n", This, flags);
|
||||
+
|
||||
+ FIXME("(%p)->(%x): stub\n", This, flags);
|
||||
+ FIXME("(%p)->(%#lx): stub\n", This, flags);
|
||||
+
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -3076,7 +3076,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%d %p)\n", This, index, id);
|
||||
+
|
||||
+ FIXME("(%p)->(%u %p): stub\n", This, index, id);
|
||||
+ FIXME("(%p)->(%lu %p): stub\n", This, index, id);
|
||||
+
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -3090,7 +3090,7 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
+ ICifComponent *comp;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)->(%u %p)\n", This, index, id);
|
||||
+ TRACE("(%p)->(%lu %p)\n", This, index, id);
|
||||
+
|
||||
+ if (!This->icif || !id)
|
||||
+ return E_FAIL;
|
||||
@@ -3166,12 +3166,12 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
static HRESULT WINAPI InstallEngine_SetAction(IInstallEngine2 *iface, const char *id, DWORD action, DWORD priority)
|
||||
{
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%s %d %d)\n", This, debugstr_a(id), action, priority);
|
||||
- FIXME("(%p)->(%s %ld %ld)\n", This, debugstr_a(id), action, priority);
|
||||
- return E_NOTIMPL;
|
||||
+ ICifComponent *comp;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)->(%s %u %u)\n", This, debugstr_a(id), action, priority);
|
||||
+ TRACE("(%p)->(%s %lu %lu)\n", This, debugstr_a(id), action, priority);
|
||||
+
|
||||
+ if (!This->icif)
|
||||
+ return E_FAIL; /* FIXME: check error code */
|
||||
@@ -3259,9 +3259,9 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
static HRESULT WINAPI InstallEngine_SetInstallOptions(IInstallEngine2 *iface, DWORD flags)
|
||||
{
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%x)\n", This, flags);
|
||||
- FIXME("(%p)->(%lx)\n", This, flags);
|
||||
+
|
||||
+ FIXME("(%p)->(%x): stub\n", This, flags);
|
||||
+ FIXME("(%p)->(%#lx): stub\n", This, flags);
|
||||
+
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -3289,9 +3289,9 @@ index 2c95a2e72bd..6a926ccb379 100644
|
||||
static HRESULT WINAPI InstallEngine_Abort(IInstallEngine2 *iface, DWORD flags)
|
||||
{
|
||||
InstallEngine *This = impl_from_IInstallEngine2(iface);
|
||||
- FIXME("(%p)->(%x)\n", This, flags);
|
||||
- FIXME("(%p)->(%lx)\n", This, flags);
|
||||
+
|
||||
+ FIXME("(%p)->(%x): stub\n", This, flags);
|
||||
+ FIXME("(%p)->(%#lx): stub\n", This, flags);
|
||||
+
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -3862,5 +3862,5 @@ index 8a3f4c4d270..82927418a99 100644
|
||||
+cpp_quote("HRESULT WINAPI GetICifFileFromFile(ICifFile **, const char *);")
|
||||
+cpp_quote("HRESULT WINAPI GetICifRWFileFromFile(ICifRWFile **, const char *);")
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From b2a5efcef525f887c7fe40ce3ed0a8a47c42d5fc Mon Sep 17 00:00:00 2001
|
||||
From f29eb0b6a2b555beea0c29e9202c218ef31311b6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Thu, 26 Feb 2015 06:41:26 +0100
|
||||
Subject: [PATCH] kernelbase: Add support for progress callback in CopyFileEx.
|
||||
@@ -9,7 +9,7 @@ Subject: [PATCH] kernelbase: Add support for progress callback in CopyFileEx.
|
||||
2 files changed, 71 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/file.c b/dlls/kernel32/tests/file.c
|
||||
index 6ea9dffde5c..b12d0477e04 100644
|
||||
index f8e49491a7d..74c13ff11d0 100644
|
||||
--- a/dlls/kernel32/tests/file.c
|
||||
+++ b/dlls/kernel32/tests/file.c
|
||||
@@ -1169,23 +1169,17 @@ static void test_CopyFileEx(void)
|
||||
@@ -37,7 +37,7 @@ index 6ea9dffde5c..b12d0477e04 100644
|
||||
|
||||
retok = CopyFileExA(source, NULL, copy_progress_cb, hfile, NULL, 0);
|
||||
diff --git a/dlls/kernelbase/file.c b/dlls/kernelbase/file.c
|
||||
index 23a36b0a765..98cf7e58368 100644
|
||||
index c6dc904044a..b9ba1bd7c26 100644
|
||||
--- a/dlls/kernelbase/file.c
|
||||
+++ b/dlls/kernelbase/file.c
|
||||
@@ -499,11 +499,16 @@ BOOL WINAPI CopyFileExW( const WCHAR *source, const WCHAR *dest, LPPROGRESS_ROUT
|
||||
@@ -60,7 +60,7 @@ index 23a36b0a765..98cf7e58368 100644
|
||||
{
|
||||
@@ -518,7 +523,15 @@ BOOL WINAPI CopyFileExW( const WCHAR *source, const WCHAR *dest, LPPROGRESS_ROUT
|
||||
|
||||
TRACE("%s -> %s, %x\n", debugstr_w(source), debugstr_w(dest), flags);
|
||||
TRACE("%s -> %s, %lx\n", debugstr_w(source), debugstr_w(dest), flags);
|
||||
|
||||
- if ((h1 = CreateFileW( source, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
|
||||
+ if (flags & COPY_FILE_RESTARTABLE)
|
||||
@@ -169,5 +169,5 @@ index 23a36b0a765..98cf7e58368 100644
|
||||
CloseHandle( h1 );
|
||||
CloseHandle( h2 );
|
||||
--
|
||||
2.30.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 96bd1ab47a39d621c5f63264fb4bc415164d371c Mon Sep 17 00:00:00 2001
|
||||
From e5ed00ac26224e2f7cc6e2ee769d254ead973ef2 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Maurer <dark.shadow4@web.de>
|
||||
Date: Fri, 10 Apr 2020 18:47:18 +0200
|
||||
Subject: [PATCH] kernelbase: Implement sortkey generation on official tables
|
||||
@@ -10,7 +10,7 @@ Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
|
||||
2 files changed, 413 insertions(+), 123 deletions(-)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
|
||||
index 94c9ce3ad1b..8447e67486c 100644
|
||||
index 8f48b89334c..1ce19b5b418 100644
|
||||
--- a/dlls/kernel32/tests/locale.c
|
||||
+++ b/dlls/kernel32/tests/locale.c
|
||||
@@ -2560,6 +2560,13 @@ static void test_lcmapstring_unicode(lcmapstring_wrapper func_ptr, const char *f
|
||||
@@ -163,7 +163,7 @@ index 94c9ce3ad1b..8447e67486c 100644
|
||||
static void test_FoldStringA(void)
|
||||
{
|
||||
int ret, i, j;
|
||||
@@ -7201,6 +7337,7 @@ START_TEST(locale)
|
||||
@@ -7194,6 +7330,7 @@ START_TEST(locale)
|
||||
test_NLSVersion();
|
||||
test_geo_name();
|
||||
test_sorting();
|
||||
@@ -172,7 +172,7 @@ index 94c9ce3ad1b..8447e67486c 100644
|
||||
test_EnumCalendarInfoW();
|
||||
test_EnumCalendarInfoExA();
|
||||
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
|
||||
index 667d1a4dc65..095e0a68558 100644
|
||||
index 2f2154a0e7c..c16535a5f1a 100644
|
||||
--- a/dlls/kernelbase/locale.c
|
||||
+++ b/dlls/kernelbase/locale.c
|
||||
@@ -2164,127 +2164,6 @@ static int wcstombs_codepage( UINT codepage, DWORD flags, const WCHAR *src, int
|
||||
@@ -585,7 +585,7 @@ index 667d1a4dc65..095e0a68558 100644
|
||||
static const struct geoinfo *get_geoinfo_ptr( GEOID geoid )
|
||||
{
|
||||
@@ -5302,8 +5455,8 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
|
||||
TRACE( "(%s,0x%08x,%s,%d,%p,%d)\n",
|
||||
TRACE( "(%s,0x%08lx,%s,%d,%p,%d)\n",
|
||||
debugstr_w(locale), flags, debugstr_wn(src, srclen), srclen, dst, dstlen );
|
||||
|
||||
- if ((ret = get_sortkey( flags, src, srclen, (char *)dst, dstlen ))) ret++;
|
||||
@@ -596,5 +596,5 @@ index 667d1a4dc65..095e0a68558 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 1ef8d8455449563aaa1d3c9ce16444134f3a9ef4 Mon Sep 17 00:00:00 2001
|
||||
From 74ed8758a238f1747055b4c8fa78edc2d5e7aba9 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Maurer <dark.shadow4@web.de>
|
||||
Date: Sat, 8 Aug 2020 17:32:56 +0200
|
||||
Subject: [PATCH] kernelbase: Implement sortkey language support
|
||||
@@ -10,10 +10,10 @@ Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
|
||||
2 files changed, 109 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
|
||||
index e8adb32bbbd..e4a31c120f0 100644
|
||||
index 0aaa87e38c1..84931318075 100644
|
||||
--- a/dlls/kernel32/tests/locale.c
|
||||
+++ b/dlls/kernel32/tests/locale.c
|
||||
@@ -3335,6 +3335,56 @@ static const struct sorting_test_entry unicode_sorting_tests[] =
|
||||
@@ -3210,6 +3210,56 @@ static const struct sorting_test_entry unicode_sorting_tests[] =
|
||||
{ L"en-US", CSTR_LESS_THAN, CSTR_EQUAL, 0, L"\x0f75", L"\x0f71\x0f74" }, /* Expansion character always follow default character logic */
|
||||
{ L"en-US", CSTR_LESS_THAN, CSTR_EQUAL, 0, L"\xfc5e", L"\x064c\x0651" }, /* Expansion character always follow default character logic */
|
||||
{ L"en-US", CSTR_LESS_THAN, CSTR_EQUAL, 0, L"\xfb2b", L"\x05e9\x05c2" }, /* Expansion character always follow default character logic */
|
||||
@@ -71,10 +71,10 @@ index e8adb32bbbd..e4a31c120f0 100644
|
||||
|
||||
static void test_unicode_sorting(void)
|
||||
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
|
||||
index da358d74934..ef135e48c2f 100644
|
||||
index e81ed0e0f2e..394912307a9 100644
|
||||
--- a/dlls/kernelbase/locale.c
|
||||
+++ b/dlls/kernelbase/locale.c
|
||||
@@ -2494,9 +2494,27 @@ struct sortkey_data
|
||||
@@ -2530,9 +2530,27 @@ struct sortkey_data
|
||||
int buffer_len;
|
||||
};
|
||||
|
||||
@@ -104,7 +104,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
info->weight_case = value >> 24;
|
||||
info->weight_diacritic = (value >> 16) & 0xff;
|
||||
info->script_member = (value >> 8) & 0xff;
|
||||
@@ -2548,18 +2566,18 @@ static void sortkey_add_diacritic_weight(struct sortkey_data *data, BYTE value,
|
||||
@@ -2584,18 +2602,18 @@ static void sortkey_add_diacritic_weight(struct sortkey_data *data, BYTE value,
|
||||
*last_weighted_pos = data->buffer_pos;
|
||||
}
|
||||
|
||||
@@ -127,7 +127,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
if (info.script_member != SORTKEY_UNSORTABLE)
|
||||
{
|
||||
sortkey_add_weight(data, info.script_member);
|
||||
@@ -2569,11 +2587,11 @@ static void sortkey_handle_expansion_main(struct sortkey_data *data, int flags,
|
||||
@@ -2605,11 +2623,11 @@ static void sortkey_handle_expansion_main(struct sortkey_data *data, int flags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -141,7 +141,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
switch (info.script_member)
|
||||
{
|
||||
@@ -2581,7 +2599,7 @@ static void sortkey_add_main_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
@@ -2617,7 +2635,7 @@ static void sortkey_add_main_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
break;
|
||||
|
||||
case SORTKEY_EXPANSION:
|
||||
@@ -150,7 +150,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
break;
|
||||
|
||||
case SORTKEY_DIACRITIC:
|
||||
@@ -2640,18 +2658,18 @@ static void sortkey_add_main_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
@@ -2676,18 +2694,18 @@ static void sortkey_add_main_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
}
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
if (info.script_member != SORTKEY_UNSORTABLE)
|
||||
{
|
||||
if (!sortkey_is_PUA(info.script_member))
|
||||
@@ -2659,12 +2677,12 @@ static void sortkey_handle_expansion_diacritic(struct sortkey_data *data, int fl
|
||||
@@ -2695,12 +2713,12 @@ static void sortkey_handle_expansion_diacritic(struct sortkey_data *data, int fl
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,7 +188,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
switch (info.script_member)
|
||||
{
|
||||
@@ -2672,7 +2690,7 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
|
||||
@@ -2708,7 +2726,7 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
|
||||
break;
|
||||
|
||||
case SORTKEY_EXPANSION:
|
||||
@@ -197,7 +197,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
break;
|
||||
|
||||
case SORTKEY_DIACRITIC:
|
||||
@@ -2728,29 +2746,29 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
|
||||
@@ -2764,29 +2782,29 @@ static void sortkey_add_diacritic_weights(struct sortkey_data *data, int flags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -233,7 +233,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
switch (info.script_member)
|
||||
{
|
||||
@@ -2758,7 +2776,7 @@ static void sortkey_add_case_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
@@ -2794,7 +2812,7 @@ static void sortkey_add_case_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
break;
|
||||
|
||||
case SORTKEY_EXPANSION:
|
||||
@@ -242,7 +242,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
break;
|
||||
|
||||
case SORTKEY_DIACRITIC:
|
||||
@@ -2800,12 +2818,12 @@ static void sortkey_add_case_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
@@ -2836,12 +2854,12 @@ static void sortkey_add_case_weights(struct sortkey_data *data, int flags, WCHAR
|
||||
}
|
||||
}
|
||||
|
||||
@@ -257,7 +257,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
if (info.script_member == SORTKEY_PUNCTUATION)
|
||||
{
|
||||
@@ -2818,11 +2836,11 @@ static void sortkey_add_special_weights(struct sortkey_data *data, int flags, WC
|
||||
@@ -2854,11 +2872,11 @@ static void sortkey_add_special_weights(struct sortkey_data *data, int flags, WC
|
||||
}
|
||||
}
|
||||
|
||||
@@ -271,7 +271,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
if (info.script_member == SORTKEY_JAPANESE)
|
||||
{
|
||||
@@ -2840,11 +2858,11 @@ static void sortkey_add_extra_weights_small(struct sortkey_data *data, int flags
|
||||
@@ -2876,11 +2894,11 @@ static void sortkey_add_extra_weights_small(struct sortkey_data *data, int flags
|
||||
}
|
||||
}
|
||||
|
||||
@@ -285,7 +285,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
if (info.script_member == SORTKEY_JAPANESE)
|
||||
{
|
||||
@@ -2861,11 +2879,11 @@ static void sortkey_add_extra_weights_kana(struct sortkey_data *data, int flags,
|
||||
@@ -2897,11 +2915,11 @@ static void sortkey_add_extra_weights_kana(struct sortkey_data *data, int flags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -299,7 +299,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
if (info.script_member == SORTKEY_JAPANESE)
|
||||
{
|
||||
@@ -2882,13 +2900,14 @@ static void sortkey_add_extra_weights_width(struct sortkey_data *data, int flags
|
||||
@@ -2918,13 +2936,14 @@ static void sortkey_add_extra_weights_width(struct sortkey_data *data, int flags
|
||||
}
|
||||
}
|
||||
|
||||
@@ -315,7 +315,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
|
||||
data.buffer = buffer;
|
||||
data.buffer_pos = 0;
|
||||
@@ -2899,7 +2918,7 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
@@ -2935,7 +2954,7 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
|
||||
/* Main weights */
|
||||
for (i = 0; i < str_len; i++)
|
||||
@@ -324,7 +324,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
sortkey_add_weight(&data, SORTKEY_SEPARATOR);
|
||||
|
||||
/* Diacritic weights */
|
||||
@@ -2908,7 +2927,7 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
@@ -2944,7 +2963,7 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
int diacritic_start_pos = data.buffer_pos;
|
||||
int last_weighted_pos = data.buffer_pos;
|
||||
for (i = 0; i < str_len; i++)
|
||||
@@ -333,7 +333,7 @@ index da358d74934..ef135e48c2f 100644
|
||||
/* Remove all weights <= SORTKEY_MIN_WEIGHT from the end */
|
||||
data.buffer_pos = last_weighted_pos;
|
||||
}
|
||||
@@ -2916,24 +2935,24 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
@@ -2952,24 +2971,24 @@ static int sortkey_generate(int flags, const WCHAR *locale, const WCHAR *str, in
|
||||
|
||||
/* Case weights */
|
||||
for (i = 0; i < str_len; i++)
|
||||
@@ -363,8 +363,8 @@ index da358d74934..ef135e48c2f 100644
|
||||
sortkey_add_weight(&data, SORTKEY_TERMINATOR);
|
||||
|
||||
if (data.buffer_pos <= buffer_len || !buffer)
|
||||
@@ -5622,7 +5641,7 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
|
||||
TRACE( "(%s,0x%08x,%s,%d,%p,%d)\n",
|
||||
@@ -5667,7 +5686,7 @@ INT WINAPI DECLSPEC_HOTPATCH LCMapStringEx( const WCHAR *locale, DWORD flags, co
|
||||
TRACE( "(%s,0x%08lx,%s,%d,%p,%d)\n",
|
||||
debugstr_w(locale), flags, debugstr_wn(src, srclen), srclen, dst, dstlen );
|
||||
|
||||
- if (!(ret = sortkey_generate(flags, L"", src, srclen, (BYTE *)dst, dstlen )))
|
||||
@@ -373,5 +373,5 @@ index da358d74934..ef135e48c2f 100644
|
||||
return ret;
|
||||
}
|
||||
--
|
||||
2.29.2
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,19 +1,19 @@
|
||||
From e741e408304cd80852ec392fe491f1cde403e283 Mon Sep 17 00:00:00 2001
|
||||
From dbe39014190d350ed1379569edce909fa29d69d9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 26 Feb 2016 04:04:12 +0100
|
||||
Subject: mmsystem.dll16: Translate MidiIn messages.
|
||||
Subject: [PATCH] mmsystem.dll16: Translate MidiIn messages.
|
||||
|
||||
---
|
||||
dlls/mmsystem.dll16/message16.c | 128 +++++++++++++++++++++++++++++++++++++++-
|
||||
dlls/mmsystem.dll16/message16.c | 128 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 126 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/mmsystem.dll16/message16.c b/dlls/mmsystem.dll16/message16.c
|
||||
index 26e47b2..05a1995 100644
|
||||
index c6a10f57188..08dbce26d88 100644
|
||||
--- a/dlls/mmsystem.dll16/message16.c
|
||||
+++ b/dlls/mmsystem.dll16/message16.c
|
||||
@@ -95,7 +95,78 @@ static void MMSYSTDRV_Mixer_MapCB(DWORD uMsg, DWORD_PTR* dwUser
|
||||
*/
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (UINT wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2)
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (DWORD wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2)
|
||||
{
|
||||
- return MMSYSTEM_MAP_MSGERROR;
|
||||
+ MMSYSTEM_MapType ret = MMSYSTEM_MAP_MSGERROR;
|
||||
@@ -91,9 +91,9 @@ index 26e47b2..05a1995 100644
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
@@ -103,7 +174,60 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (UINT wMsg, DWORD_PTR* lpP
|
||||
@@ -103,7 +174,60 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiIn_Map16To32W (DWORD wMsg, DWORD_PTR* lp
|
||||
*/
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_UnMap16To32W(UINT wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2, MMRESULT fn_ret)
|
||||
static MMSYSTEM_MapType MMSYSTDRV_MidiIn_UnMap16To32W(DWORD wMsg, DWORD_PTR* lpParam1, DWORD_PTR* lpParam2, MMRESULT fn_ret)
|
||||
{
|
||||
- return MMSYSTEM_MAP_MSGERROR;
|
||||
+ MMSYSTEM_MapType ret = MMSYSTEM_MAP_MSGERROR;
|
||||
@@ -154,5 +154,5 @@ index 26e47b2..05a1995 100644
|
||||
|
||||
/**************************************************************************
|
||||
--
|
||||
2.7.1
|
||||
2.34.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From f1500a8dcd6e90680d69fb04ff4f01c1ea4f9fae Mon Sep 17 00:00:00 2001
|
||||
From 84c611b7d9345b2b1ea551df24be0c093b11ccb7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 8 Sep 2020 18:43:52 +0200
|
||||
Subject: [PATCH] msxml3: Implement FreeThreadedXMLHTTP60.
|
||||
@@ -26,10 +26,10 @@ index 2bf789732da..e2d737599b1 100644
|
||||
|
||||
C_SRCS = \
|
||||
diff --git a/dlls/msxml3/factory.c b/dlls/msxml3/factory.c
|
||||
index 34aa3bc4e23..651a6b8e9df 100644
|
||||
index 243ee379712..323c7b49848 100644
|
||||
--- a/dlls/msxml3/factory.c
|
||||
+++ b/dlls/msxml3/factory.c
|
||||
@@ -277,6 +277,7 @@ static HRESULT DOMClassFactory_Create(const GUID *clsid, REFIID riid, void **ppv
|
||||
@@ -279,6 +279,7 @@ static HRESULT DOMClassFactory_Create(const GUID *clsid, REFIID riid, void **ppv
|
||||
|
||||
static ClassFactory xmldoccf = { { &ClassFactoryVtbl }, XMLDocument_create };
|
||||
static ClassFactory httpreqcf = { { &ClassFactoryVtbl }, XMLHTTPRequest_create };
|
||||
@@ -37,7 +37,7 @@ index 34aa3bc4e23..651a6b8e9df 100644
|
||||
static ClassFactory serverhttp = { { &ClassFactoryVtbl }, ServerXMLHTTP_create };
|
||||
static ClassFactory xsltemplatecf = { { &ClassFactoryVtbl }, XSLTemplate_create };
|
||||
static ClassFactory mxnsmanagercf = { {&ClassFactoryVtbl }, MXNamespaceManager_create };
|
||||
@@ -338,6 +339,10 @@ HRESULT WINAPI DllGetClassObject( REFCLSID rclsid, REFIID riid, void **ppv )
|
||||
@@ -340,6 +341,10 @@ HRESULT WINAPI DllGetClassObject( REFCLSID rclsid, REFIID riid, void **ppv )
|
||||
{
|
||||
cf = &httpreqcf.IClassFactory_iface;
|
||||
}
|
||||
@@ -49,7 +49,7 @@ index 34aa3bc4e23..651a6b8e9df 100644
|
||||
IsEqualCLSID( rclsid, &CLSID_ServerXMLHTTP30 ) ||
|
||||
IsEqualCLSID( rclsid, &CLSID_ServerXMLHTTP40 ) ||
|
||||
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
|
||||
index 934d580064f..65232bbc8af 100644
|
||||
index cc384a380e5..70855d5c6ee 100644
|
||||
--- a/dlls/msxml3/httprequest.c
|
||||
+++ b/dlls/msxml3/httprequest.c
|
||||
@@ -38,10 +38,12 @@
|
||||
@@ -66,7 +66,7 @@ index 934d580064f..65232bbc8af 100644
|
||||
|
||||
static const WCHAR colspaceW[] = {':',' ',0};
|
||||
static const WCHAR crlfW[] = {'\r','\n',0};
|
||||
@@ -2074,6 +2076,468 @@ static const struct IServerXMLHTTPRequestVtbl ServerXMLHTTPRequestVtbl =
|
||||
@@ -2058,6 +2060,468 @@ static const struct IServerXMLHTTPRequestVtbl ServerXMLHTTPRequestVtbl =
|
||||
ServerXMLHTTPRequest_setOption
|
||||
};
|
||||
|
||||
@@ -535,7 +535,7 @@ index 934d580064f..65232bbc8af 100644
|
||||
static void init_httprequest(httprequest *req)
|
||||
{
|
||||
req->IXMLHTTPRequest_iface.lpVtbl = &XMLHTTPRequestVtbl;
|
||||
@@ -2123,6 +2587,35 @@ HRESULT XMLHTTPRequest_create(void **obj)
|
||||
@@ -2107,6 +2571,35 @@ HRESULT XMLHTTPRequest_create(void **obj)
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@@ -571,16 +571,16 @@ index 934d580064f..65232bbc8af 100644
|
||||
HRESULT ServerXMLHTTP_create(void **obj)
|
||||
{
|
||||
serverhttp *req;
|
||||
@@ -2142,3 +2635,4 @@ HRESULT ServerXMLHTTP_create(void **obj)
|
||||
@@ -2126,3 +2619,4 @@ HRESULT ServerXMLHTTP_create(void **obj)
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
+
|
||||
diff --git a/dlls/msxml3/msxml_private.h b/dlls/msxml3/msxml_private.h
|
||||
index 07ed09fb480..6b45cc63a9e 100644
|
||||
index 8003c1a9650..59b8c29845d 100644
|
||||
--- a/dlls/msxml3/msxml_private.h
|
||||
+++ b/dlls/msxml3/msxml_private.h
|
||||
@@ -365,6 +365,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
|
||||
@@ -367,6 +367,7 @@ extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT SAXXMLReader_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT SAXAttributes_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
|
||||
extern HRESULT XMLHTTPRequest_create(void **) DECLSPEC_HIDDEN;
|
||||
@@ -1065,5 +1065,5 @@ index 333d4f3d3c7..1b4f0452c5f 100644
|
||||
/*
|
||||
* Note that because of a #define in msxml2.h, we end up initializing
|
||||
--
|
||||
2.33.0
|
||||
2.34.1
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user