mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Rebase against 17056908acae1d5c7cf5d255ec232210abfe86da
This commit is contained in:
parent
553986fdfb
commit
1773e25340
@ -1,23 +1,23 @@
|
||||
From f23512417cb3d149a8be4f757282d17cc1f99f9a Mon Sep 17 00:00:00 2001
|
||||
From fa73044dd60bae90b9a5ec850205a07579d4db17 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Thu, 29 May 2014 23:43:45 +0200
|
||||
Subject: loader: Add commandline option --patches to show the patch list.
|
||||
Subject: [PATCH] loader: Add commandline option --patches to show the patch
|
||||
list.
|
||||
|
||||
---
|
||||
dlls/ntdll/misc.c | 8 ++++++++
|
||||
dlls/ntdll/ntdll.spec | 1 +
|
||||
include/wine/library.h | 1 +
|
||||
libs/wine/config.c | 6 ++++++
|
||||
libs/wine/wine.def | 1 +
|
||||
libs/wine/wine.map | 1 +
|
||||
loader/main.c | 42 +++++++++++++++++++++++++++++++++++++++++-
|
||||
7 files changed, 59 insertions(+), 1 deletion(-)
|
||||
6 files changed, 58 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/ntdll/misc.c b/dlls/ntdll/misc.c
|
||||
index ad1b43b..1f985e7 100644
|
||||
index bb75d9c..21e2db6 100644
|
||||
--- a/dlls/ntdll/misc.c
|
||||
+++ b/dlls/ntdll/misc.c
|
||||
@@ -55,6 +55,14 @@ const char * CDECL NTDLL_wine_get_version(void)
|
||||
@@ -61,6 +61,14 @@ const char * CDECL NTDLL_wine_get_version(void)
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
@ -33,10 +33,10 @@ index ad1b43b..1f985e7 100644
|
||||
*/
|
||||
const char * CDECL NTDLL_wine_get_build_id(void)
|
||||
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
|
||||
index 51de6e7..ee4ed49 100644
|
||||
index 292b0f6..fb45a94 100644
|
||||
--- a/dlls/ntdll/ntdll.spec
|
||||
+++ b/dlls/ntdll/ntdll.spec
|
||||
@@ -1421,6 +1421,7 @@
|
||||
@@ -1516,6 +1516,7 @@
|
||||
|
||||
# Version
|
||||
@ cdecl wine_get_version() NTDLL_wine_get_version
|
||||
@ -57,10 +57,10 @@ index 242bb69..fae73fe 100644
|
||||
extern void wine_init_argv0_path( const char *argv0 );
|
||||
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
|
||||
diff --git a/libs/wine/config.c b/libs/wine/config.c
|
||||
index a273502..5262c76 100644
|
||||
index 3c9110b..5da6263 100644
|
||||
--- a/libs/wine/config.c
|
||||
+++ b/libs/wine/config.c
|
||||
@@ -478,6 +478,12 @@ const char *wine_get_version(void)
|
||||
@@ -522,6 +522,12 @@ const char *wine_get_version(void)
|
||||
return PACKAGE_VERSION;
|
||||
}
|
||||
|
||||
@ -73,18 +73,6 @@ index a273502..5262c76 100644
|
||||
/* return the build id string */
|
||||
const char *wine_get_build_id(void)
|
||||
{
|
||||
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
|
||||
index ed315bd..5b42029 100644
|
||||
--- a/libs/wine/wine.def
|
||||
+++ b/libs/wine/wine.def
|
||||
@@ -83,6 +83,7 @@ EXPORTS
|
||||
wine_get_sortkey
|
||||
wine_get_user_name
|
||||
wine_get_version
|
||||
+ wine_get_patches
|
||||
wine_init
|
||||
wine_init_argv0_path
|
||||
wine_is_dbcs_leadbyte
|
||||
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
|
||||
index 2159fac..7cb2918 100644
|
||||
--- a/libs/wine/wine.map
|
||||
@ -98,10 +86,10 @@ index 2159fac..7cb2918 100644
|
||||
wine_init_argv0_path;
|
||||
wine_is_dbcs_leadbyte;
|
||||
diff --git a/loader/main.c b/loader/main.c
|
||||
index ce21173..4794e51 100644
|
||||
index f197cf8..f662912 100644
|
||||
--- a/loader/main.c
|
||||
+++ b/loader/main.c
|
||||
@@ -89,7 +89,8 @@ static void check_command_line( int argc, char *argv[] )
|
||||
@@ -54,7 +54,8 @@ static void check_command_line( int argc, char *argv[] )
|
||||
static const char usage[] =
|
||||
"Usage: wine PROGRAM [ARGUMENTS...] Run the specified program\n"
|
||||
" wine --help Display this help and exit\n"
|
||||
@ -111,7 +99,7 @@ index ce21173..4794e51 100644
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
@@ -106,6 +107,45 @@ static void check_command_line( int argc, char *argv[] )
|
||||
@@ -71,6 +72,45 @@ static void check_command_line( int argc, char *argv[] )
|
||||
printf( "%s\n", wine_get_build_id() );
|
||||
exit(0);
|
||||
}
|
||||
@ -158,5 +146,5 @@ index ce21173..4794e51 100644
|
||||
|
||||
|
||||
--
|
||||
2.2.1
|
||||
1.9.1
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
From 41863fd8fdf3a885efa93359a538e4e74258fb30 Mon Sep 17 00:00:00 2001
|
||||
From 9618572cf2eace39198fb83b747a70d1865015e3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 28 May 2014 19:50:51 +0200
|
||||
Subject: loader: Add commandline option --check-libs.
|
||||
Subject: [PATCH] loader: Add commandline option --check-libs.
|
||||
|
||||
---
|
||||
include/wine/library.h | 2 +
|
||||
libs/wine/config.c | 124 +++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
libs/wine/loader.c | 36 ++++++++++++++
|
||||
libs/wine/wine.def | 2 +
|
||||
libs/wine/wine.map | 2 +
|
||||
loader/main.c | 50 +++++++++++++++++++-
|
||||
6 files changed, 215 insertions(+), 1 deletion(-)
|
||||
5 files changed, 213 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/wine/library.h b/include/wine/library.h
|
||||
index fae73fe..7395a11 100644
|
||||
@ -33,10 +32,10 @@ index fae73fe..7395a11 100644
|
||||
extern void *wine_dlsym( void *handle, const char *symbol, char *error, size_t errorsize );
|
||||
extern int wine_dlclose( void *handle, char *error, size_t errorsize );
|
||||
diff --git a/libs/wine/config.c b/libs/wine/config.c
|
||||
index 12f4a67..be9f401 100644
|
||||
index 5da6263..6cedfb7 100644
|
||||
--- a/libs/wine/config.c
|
||||
+++ b/libs/wine/config.c
|
||||
@@ -443,6 +443,130 @@ const char *wine_get_build_dir(void)
|
||||
@@ -488,6 +488,130 @@ const char *wine_get_build_dir(void)
|
||||
return build_dir;
|
||||
}
|
||||
|
||||
@ -168,10 +167,10 @@ index 12f4a67..be9f401 100644
|
||||
const char *wine_get_server_dir(void)
|
||||
{
|
||||
diff --git a/libs/wine/loader.c b/libs/wine/loader.c
|
||||
index b5b32cc..1453a82 100644
|
||||
index 649aa22..367dde3 100644
|
||||
--- a/libs/wine/loader.c
|
||||
+++ b/libs/wine/loader.c
|
||||
@@ -1041,6 +1041,42 @@ void *wine_dlopen( const char *filename, int flag, char *error, size_t errorsize
|
||||
@@ -1064,6 +1064,42 @@ void *wine_dlopen( const char *filename, int flag, char *error, size_t errorsize
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -214,26 +213,6 @@ index b5b32cc..1453a82 100644
|
||||
* wine_dlsym
|
||||
*/
|
||||
void *wine_dlsym( void *handle, const char *symbol, char *error, size_t errorsize )
|
||||
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
|
||||
index 5b42029..6acf329 100644
|
||||
--- a/libs/wine/wine.def
|
||||
+++ b/libs/wine/wine.def
|
||||
@@ -64,6 +64,7 @@ EXPORTS
|
||||
wine_dbg_sprintf
|
||||
wine_dbgstr_an
|
||||
wine_dbgstr_wn
|
||||
+ wine_dladdr
|
||||
wine_dlclose
|
||||
wine_dll_enum_load_path
|
||||
wine_dll_get_owner
|
||||
@@ -79,6 +80,7 @@ EXPORTS
|
||||
wine_get_build_id
|
||||
wine_get_config_dir
|
||||
wine_get_data_dir
|
||||
+ wine_get_libs
|
||||
wine_get_server_dir
|
||||
wine_get_sortkey
|
||||
wine_get_user_name
|
||||
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
|
||||
index 7cb2918..72ffed8 100644
|
||||
--- a/libs/wine/wine.map
|
||||
@ -255,7 +234,7 @@ index 7cb2918..72ffed8 100644
|
||||
wine_get_sortkey;
|
||||
wine_get_ss;
|
||||
diff --git a/loader/main.c b/loader/main.c
|
||||
index 343ea26..44804e1 100644
|
||||
index f662912..a2dc40c 100644
|
||||
--- a/loader/main.c
|
||||
+++ b/loader/main.c
|
||||
@@ -36,6 +36,12 @@
|
||||
@ -271,7 +250,7 @@ index 343ea26..44804e1 100644
|
||||
#include <pthread.h>
|
||||
|
||||
#include "wine/library.h"
|
||||
@@ -90,7 +96,8 @@ static void check_command_line( int argc, char *argv[] )
|
||||
@@ -55,7 +61,8 @@ static void check_command_line( int argc, char *argv[] )
|
||||
"Usage: wine PROGRAM [ARGUMENTS...] Run the specified program\n"
|
||||
" wine --help Display this help and exit\n"
|
||||
" wine --version Output version information and exit\n"
|
||||
@ -281,7 +260,7 @@ index 343ea26..44804e1 100644
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
@@ -146,6 +153,47 @@ static void check_command_line( int argc, char *argv[] )
|
||||
@@ -111,6 +118,47 @@ static void check_command_line( int argc, char *argv[] )
|
||||
|
||||
exit(0);
|
||||
}
|
||||
@ -330,5 +309,5 @@ index 343ea26..44804e1 100644
|
||||
|
||||
|
||||
--
|
||||
2.7.1
|
||||
1.9.1
|
||||
|
||||
|
@ -1,87 +0,0 @@
|
||||
From 6c77d9cea2889d1cacbe8d774f07aef887dee3fa Mon Sep 17 00:00:00 2001
|
||||
From: Christian Costa <titan.costa@gmail.com>
|
||||
Date: Sun, 30 Jul 2017 23:50:18 +0200
|
||||
Subject: d3dx9: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for
|
||||
32 bpp BMP with alpha.
|
||||
|
||||
---
|
||||
dlls/d3dx9_36/surface.c | 18 ++++++++++++++++++
|
||||
dlls/d3dx9_36/tests/surface.c | 26 ++++++++++++++++++++++++++
|
||||
2 files changed, 44 insertions(+)
|
||||
|
||||
diff --git a/dlls/d3dx9_36/surface.c b/dlls/d3dx9_36/surface.c
|
||||
index 958805a8cc6..87a41255050 100644
|
||||
--- a/dlls/d3dx9_36/surface.c
|
||||
+++ b/dlls/d3dx9_36/surface.c
|
||||
@@ -973,6 +973,24 @@ HRESULT WINAPI D3DXGetImageInfoFromFileInMemory(const void *data, UINT datasize,
|
||||
}
|
||||
}
|
||||
|
||||
+ /* For 32 bpp BMP, windowscodecs.dll never returns a format with alpha while
|
||||
+ * d3dx9_xx.dll returns one if at least 1 pixel has a non zero alpha component */
|
||||
+ if (SUCCEEDED(hr) && (info->Format == D3DFMT_X8R8G8B8) && (info->ImageFileFormat == D3DXIFF_BMP)) {
|
||||
+ DWORD size = sizeof(DWORD) * info->Width * info->Height;
|
||||
+ BYTE *buffer = HeapAlloc(GetProcessHeap(), 0, size);
|
||||
+ hr = IWICBitmapFrameDecode_CopyPixels(frame, NULL, sizeof(DWORD) * info->Width, size, buffer);
|
||||
+ if (SUCCEEDED(hr)) {
|
||||
+ DWORD i;
|
||||
+ for (i = 0; i < info->Width * info->Height; i++) {
|
||||
+ if (buffer[i*4+3]) {
|
||||
+ info->Format = D3DFMT_A8R8G8B8;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ HeapFree(GetProcessHeap(), 0, buffer);
|
||||
+ }
|
||||
+
|
||||
if (frame)
|
||||
IWICBitmapFrameDecode_Release(frame);
|
||||
|
||||
diff --git a/dlls/d3dx9_36/tests/surface.c b/dlls/d3dx9_36/tests/surface.c
|
||||
index 2be48dfddab..e45ee36e69c 100644
|
||||
--- a/dlls/d3dx9_36/tests/surface.c
|
||||
+++ b/dlls/d3dx9_36/tests/surface.c
|
||||
@@ -67,6 +67,24 @@ static const unsigned char bmp_8bpp[] = {
|
||||
0x00,0x00
|
||||
};
|
||||
|
||||
+/* 2x2 bmp (32 bpp XRGB) */
|
||||
+static const unsigned char bmp_32bpp_xrgb[] = {
|
||||
+0x42,0x4d,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x28,0x00,
|
||||
+0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x01,0x00,0x20,0x00,0x00,0x00,
|
||||
+0x00,0x00,0x10,0x00,0x00,0x00,0x12,0x0b,0x00,0x00,0x12,0x0b,0x00,0x00,0x00,0x00,
|
||||
+0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0xb0,0xc0,0x00,0xa1,0xb1,0xc1,0x00,0xa2,0xb2,
|
||||
+0xc2,0x00,0xa3,0xb3,0xc3,0x00
|
||||
+};
|
||||
+
|
||||
+/* 2x2 bmp (32 bpp ARGB) */
|
||||
+static const unsigned char bmp_32bpp_argb[] = {
|
||||
+0x42,0x4d,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x28,0x00,
|
||||
+0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x01,0x00,0x20,0x00,0x00,0x00,
|
||||
+0x00,0x00,0x10,0x00,0x00,0x00,0x12,0x0b,0x00,0x00,0x12,0x0b,0x00,0x00,0x00,0x00,
|
||||
+0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0xb0,0xc0,0x00,0xa1,0xb1,0xc1,0x00,0xa2,0xb2,
|
||||
+0xc2,0x00,0xa3,0xb3,0xc3,0x01
|
||||
+};
|
||||
+
|
||||
static const unsigned char png_grayscale[] =
|
||||
{
|
||||
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49,
|
||||
@@ -559,6 +577,14 @@ static void test_D3DXGetImageInfo(void)
|
||||
ok(hr == D3D_OK, "D3DXGetImageInfoFromFileInMemory returned %#x, expected %#x\n", hr, D3D_OK);
|
||||
ok(info.Depth == 1, "Got depth %u, expected 1\n", info.Depth);
|
||||
ok(info.Format == D3DFMT_P8, "Got format %u, expected %u\n", info.Format, D3DFMT_P8);
|
||||
+ hr = D3DXGetImageInfoFromFileInMemory(bmp_32bpp_xrgb, sizeof(bmp_32bpp_xrgb), &info);
|
||||
+ ok(hr == D3D_OK, "D3DXGetImageInfoFromFileInMemory returned %#x, expected %#x\n", hr, D3D_OK);
|
||||
+ ok(info.Depth == 1, "Got depth %u, expected 1\n", info.Depth);
|
||||
+ ok(info.Format == D3DFMT_X8R8G8B8, "Got format %u, expected %u\n", info.Format, D3DFMT_X8R8G8B8);
|
||||
+ hr = D3DXGetImageInfoFromFileInMemory(bmp_32bpp_argb, sizeof(bmp_32bpp_argb), &info);
|
||||
+ ok(hr == D3D_OK, "D3DXGetImageInfoFromFileInMemory returned %#x, expected %#x\n", hr, D3D_OK);
|
||||
+ ok(info.Depth == 1, "Got depth %u, expected 1\n", info.Depth);
|
||||
+ ok(info.Format == D3DFMT_A8R8G8B8, "Got format %u, expected %u\n", info.Format, D3DFMT_A8R8G8B8);
|
||||
|
||||
/* Grayscale PNG */
|
||||
hr = D3DXGetImageInfoFromFileInMemory(png_grayscale, sizeof(png_grayscale), &info);
|
||||
--
|
||||
2.13.1
|
||||
|
@ -1 +0,0 @@
|
||||
Fixes: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for 32 bpp BMP with alpha
|
@ -1,81 +0,0 @@
|
||||
From c20687718ab550c2f8b481ebad484986cdd588e4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 28 Jul 2015 17:26:09 +0200
|
||||
Subject: d3dx9_36: Return dummy skininfo interface in D3DXLoadSkinMeshFromXof
|
||||
when skin information is unavailable.
|
||||
|
||||
---
|
||||
dlls/d3dx9_36/d3dx9_private.h | 2 ++
|
||||
dlls/d3dx9_36/mesh.c | 7 +++++++
|
||||
dlls/d3dx9_36/skin.c | 22 +++++++++++++++++++++-
|
||||
3 files changed, 30 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3dx9_36/d3dx9_private.h b/dlls/d3dx9_36/d3dx9_private.h
|
||||
index 9c1a6b23a49..f07173cda23 100644
|
||||
--- a/dlls/d3dx9_36/d3dx9_private.h
|
||||
+++ b/dlls/d3dx9_36/d3dx9_private.h
|
||||
@@ -367,4 +367,6 @@ struct ctab_constant {
|
||||
const struct ctab_constant *d3dx_shader_get_ctab_constant(ID3DXConstantTable *iface,
|
||||
D3DXHANDLE constant) DECLSPEC_HIDDEN;
|
||||
|
||||
+HRESULT create_dummy_skin(ID3DXSkinInfo **iface) DECLSPEC_HIDDEN;
|
||||
+
|
||||
#endif /* __WINE_D3DX9_PRIVATE_H */
|
||||
diff --git a/dlls/d3dx9_36/mesh.c b/dlls/d3dx9_36/mesh.c
|
||||
index 1ddb4c300cb..1d41b775c1b 100644
|
||||
--- a/dlls/d3dx9_36/mesh.c
|
||||
+++ b/dlls/d3dx9_36/mesh.c
|
||||
@@ -3332,6 +3332,13 @@ static HRESULT parse_mesh(ID3DXFileData *filedata, struct mesh_data *mesh_data,
|
||||
goto end;
|
||||
}
|
||||
|
||||
+ if ((provide_flags & PROVIDE_SKININFO) && !mesh_data->skin_info)
|
||||
+ {
|
||||
+ hr = create_dummy_skin(&mesh_data->skin_info);
|
||||
+ if (FAILED(hr))
|
||||
+ goto end;
|
||||
+ }
|
||||
+
|
||||
hr = D3D_OK;
|
||||
|
||||
end:
|
||||
diff --git a/dlls/d3dx9_36/skin.c b/dlls/d3dx9_36/skin.c
|
||||
index f197d33582a..bed4b9f49d2 100644
|
||||
--- a/dlls/d3dx9_36/skin.c
|
||||
+++ b/dlls/d3dx9_36/skin.c
|
||||
@@ -94,7 +94,7 @@ static ULONG WINAPI d3dx9_skin_info_Release(ID3DXSkinInfo *iface)
|
||||
HeapFree(GetProcessHeap(), 0, skin->bones[i].vertices);
|
||||
HeapFree(GetProcessHeap(), 0, skin->bones[i].weights);
|
||||
}
|
||||
- HeapFree(GetProcessHeap(), 0, skin->bones);
|
||||
+ if (skin->bones) HeapFree(GetProcessHeap(), 0, skin->bones);
|
||||
HeapFree(GetProcessHeap(), 0, skin);
|
||||
}
|
||||
|
||||
@@ -495,3 +495,23 @@ HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD num_vertices, DWORD fvf, DWORD num_bo
|
||||
|
||||
return D3DXCreateSkinInfo(num_vertices, declaration, num_bones, skin_info);
|
||||
}
|
||||
+
|
||||
+HRESULT create_dummy_skin(ID3DXSkinInfo **iface)
|
||||
+{
|
||||
+ static const D3DVERTEXELEMENT9 empty_declaration = D3DDECL_END();
|
||||
+ struct d3dx9_skin_info *object = NULL;
|
||||
+
|
||||
+ object = HeapAlloc(GetProcessHeap(), 0, sizeof(*object));
|
||||
+ if (!object) return E_OUTOFMEMORY;
|
||||
+
|
||||
+ object->ID3DXSkinInfo_iface.lpVtbl = &d3dx9_skin_info_vtbl;
|
||||
+ object->ref = 1;
|
||||
+ object->num_vertices = 0;
|
||||
+ object->num_bones = 0;
|
||||
+ object->vertex_declaration[0] = empty_declaration;
|
||||
+ object->fvf = 0;
|
||||
+ object->bones = NULL;
|
||||
+
|
||||
+ *iface = &object->ID3DXSkinInfo_iface;
|
||||
+ return D3D_OK;
|
||||
+}
|
||||
--
|
||||
2.13.1
|
||||
|
@ -1 +0,0 @@
|
||||
Fixes: [33904] Return dummy ID3DXSkinInfo interface when skinning info not present
|
@ -52,7 +52,7 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "8268c47462544baf5bc7e5071c0a9f2d00c5c2cb"
|
||||
echo "17056908acae1d5c7cf5d255ec232210abfe86da"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
@ -106,7 +106,6 @@ patch_enable_all ()
|
||||
enable_d3d11_Deferred_Context="$1"
|
||||
enable_d3d9_DesktopWindow="$1"
|
||||
enable_d3d9_Tests="$1"
|
||||
enable_d3dx9_36_32bpp_Alpha_Channel="$1"
|
||||
enable_d3dx9_36_BumpLuminance="$1"
|
||||
enable_d3dx9_36_CloneEffect="$1"
|
||||
enable_d3dx9_36_D3DXDisassembleShader="$1"
|
||||
@ -116,7 +115,6 @@ patch_enable_all ()
|
||||
enable_d3dx9_36_DDS="$1"
|
||||
enable_d3dx9_36_DXTn="$1"
|
||||
enable_d3dx9_36_DrawText="$1"
|
||||
enable_d3dx9_36_Dummy_Skininfo="$1"
|
||||
enable_d3dx9_36_Filter_Warnings="$1"
|
||||
enable_d3dx9_36_Optimize_Inplace="$1"
|
||||
enable_d3dx9_36_Texture_Align="$1"
|
||||
@ -460,9 +458,6 @@ patch_enable ()
|
||||
d3d9-Tests)
|
||||
enable_d3d9_Tests="$2"
|
||||
;;
|
||||
d3dx9_36-32bpp_Alpha_Channel)
|
||||
enable_d3dx9_36_32bpp_Alpha_Channel="$2"
|
||||
;;
|
||||
d3dx9_36-BumpLuminance)
|
||||
enable_d3dx9_36_BumpLuminance="$2"
|
||||
;;
|
||||
@ -490,9 +485,6 @@ patch_enable ()
|
||||
d3dx9_36-DrawText)
|
||||
enable_d3dx9_36_DrawText="$2"
|
||||
;;
|
||||
d3dx9_36-Dummy_Skininfo)
|
||||
enable_d3dx9_36_Dummy_Skininfo="$2"
|
||||
;;
|
||||
d3dx9_36-Filter_Warnings)
|
||||
enable_d3dx9_36_Filter_Warnings="$2"
|
||||
;;
|
||||
@ -2179,7 +2171,7 @@ fi
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/process.c, dlls/ntdll/misc.c, dlls/ntdll/ntdll.spec, include/wine/library.h, libs/wine/Makefile.in,
|
||||
# | libs/wine/config.c, libs/wine/loader.c, libs/wine/wine.def, libs/wine/wine.map, loader/main.c
|
||||
# | libs/wine/config.c, libs/wine/loader.c, libs/wine/wine.map, loader/main.c
|
||||
# |
|
||||
if test "$enable_Staging" -eq 1; then
|
||||
patch_apply Staging/0001-kernel32-Add-winediag-message-to-show-warning-that-t.patch
|
||||
@ -2749,18 +2741,6 @@ if test "$enable_d3d9_Tests" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset d3dx9_36-32bpp_Alpha_Channel
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/d3dx9_36/surface.c, dlls/d3dx9_36/tests/surface.c
|
||||
# |
|
||||
if test "$enable_d3dx9_36_32bpp_Alpha_Channel" -eq 1; then
|
||||
patch_apply d3dx9_36-32bpp_Alpha_Channel/0001-d3dx9-Return-D3DFMT_A8R8G8B8-in-D3DXGetImageInfoFrom.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Christian Costa", "d3dx9: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for 32 bpp BMP with alpha.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset d3dx9_36-BumpLuminance
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -2965,21 +2945,6 @@ if test "$enable_d3dx9_36_DrawText" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset d3dx9_36-Dummy_Skininfo
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#33904] Return dummy ID3DXSkinInfo interface when skinning info not present
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/d3dx9_36/d3dx9_private.h, dlls/d3dx9_36/mesh.c, dlls/d3dx9_36/skin.c
|
||||
# |
|
||||
if test "$enable_d3dx9_36_Dummy_Skininfo" -eq 1; then
|
||||
patch_apply d3dx9_36-Dummy_Skininfo/0001-d3dx9_36-Return-dummy-skininfo-interface-in-D3DXLoad.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Michael Müller", "d3dx9_36: Return dummy skininfo interface in D3DXLoadSkinMeshFromXof when skin information is unavailable.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset d3dx9_36-Filter_Warnings
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -6189,15 +6154,13 @@ fi
|
||||
# Patchset taskmgr-Memory_Usage
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/ntdll/nt.c, programs/taskmgr/graph.c
|
||||
# | * dlls/ntdll/nt.c
|
||||
# |
|
||||
if test "$enable_taskmgr_Memory_Usage" -eq 1; then
|
||||
patch_apply taskmgr-Memory_Usage/0002-ntdll-Report-system-information-SystemPerformanceInf.patch
|
||||
patch_apply taskmgr-Memory_Usage/0004-taskmgr-Use-different-units-depending-on-memory-usag.patch
|
||||
patch_apply taskmgr-Memory_Usage/0005-ntdll-Implement-basic-IO-stats-for-SystemPerformance.patch
|
||||
(
|
||||
printf '%s\n' '+ { "Michael Müller", "ntdll: Report system information SystemPerformanceInformation info class.", 2 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "taskmgr: Use different units depending on memory usage.", 1 },';
|
||||
printf '%s\n' '+ { "Michael Müller", "ntdll: Implement basic IO stats for SystemPerformanceInformation in NtQuerySystemInformation.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
@ -1,45 +0,0 @@
|
||||
From 7136c5e40b705658e8f30f8d11c185aef1cc8f6e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Wed, 27 Jan 2016 05:03:26 +0100
|
||||
Subject: [PATCH] taskmgr: Use different units depending on memory usage.
|
||||
|
||||
---
|
||||
programs/taskmgr/graph.c | 15 +++++++++++----
|
||||
1 file changed, 11 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/programs/taskmgr/graph.c b/programs/taskmgr/graph.c
|
||||
index 7e978e1..eb2a4a3 100644
|
||||
--- a/programs/taskmgr/graph.c
|
||||
+++ b/programs/taskmgr/graph.c
|
||||
@@ -239,8 +239,10 @@ static void Graph_DrawMemUsageGraph(HDC hDC, HWND hWnd)
|
||||
/* Top bars that are "unused", i.e. are dark green, representing free memory */
|
||||
int i;
|
||||
|
||||
- static const WCHAR wszFormat[] = {'%','d','K',0};
|
||||
-
|
||||
+ static const WCHAR wszFormatKB[] = {'%','u',' ','K','B',0};
|
||||
+ static const WCHAR wszFormatMB[] = {'%','u',' ','M','B',0};
|
||||
+ static const WCHAR wszFormatGB[] = {'%','.','1','f',' ','G','B',0};
|
||||
+
|
||||
/*
|
||||
* Get the client area rectangle
|
||||
*/
|
||||
@@ -257,8 +259,13 @@ static void Graph_DrawMemUsageGraph(HDC hDC, HWND hWnd)
|
||||
CommitChargeTotal = (ULONGLONG)PerfDataGetCommitChargeTotalK();
|
||||
CommitChargeLimit = (ULONGLONG)PerfDataGetCommitChargeLimitK();
|
||||
|
||||
- swprintf(Text, wszFormat, (int)CommitChargeTotal);
|
||||
-
|
||||
+ if (CommitChargeTotal > 1048576)
|
||||
+ swprintf(Text, wszFormatGB, (float)CommitChargeTotal / 1048576);
|
||||
+ else if (CommitChargeTotal > 1024)
|
||||
+ swprintf(Text, wszFormatMB, (DWORD)CommitChargeTotal / 1024);
|
||||
+ else
|
||||
+ swprintf(Text, wszFormatKB, (DWORD)CommitChargeTotal);
|
||||
+
|
||||
/*
|
||||
* Draw the font text onto the graph
|
||||
* The bottom 20 pixels are reserved for the text
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 86345de0628fe7d467f25797c532a3a11e5b61eb Mon Sep 17 00:00:00 2001
|
||||
From 06aedadd2d7a6f0333e050806ce1d368e8a5fece Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Mon, 15 May 2017 02:05:49 +0200
|
||||
Subject: [PATCH] winebuild: Use multipass label system to generate fake dlls.
|
||||
@ -11,10 +11,10 @@ Subject: [PATCH] winebuild: Use multipass label system to generate fake dlls.
|
||||
4 files changed, 180 insertions(+), 64 deletions(-)
|
||||
|
||||
diff --git a/tools/winebuild/build.h b/tools/winebuild/build.h
|
||||
index b8ab56e..218b721 100644
|
||||
index 0b7cb37..c1703de 100644
|
||||
--- a/tools/winebuild/build.h
|
||||
+++ b/tools/winebuild/build.h
|
||||
@@ -332,6 +332,7 @@ extern size_t input_buffer_pos;
|
||||
@@ -338,6 +338,7 @@ extern size_t input_buffer_pos;
|
||||
extern size_t input_buffer_size;
|
||||
extern unsigned char *output_buffer;
|
||||
extern size_t output_buffer_pos;
|
||||
@ -22,7 +22,7 @@ index b8ab56e..218b721 100644
|
||||
extern size_t output_buffer_size;
|
||||
|
||||
extern void init_input_buffer( const char *file );
|
||||
@@ -347,6 +348,11 @@ extern void put_dword( unsigned int val );
|
||||
@@ -353,6 +354,11 @@ extern void put_dword( unsigned int val );
|
||||
extern void put_qword( unsigned int val );
|
||||
extern void put_pword( unsigned int val );
|
||||
extern void align_output( unsigned int align );
|
||||
@ -35,10 +35,10 @@ index b8ab56e..218b721 100644
|
||||
/* global variables */
|
||||
|
||||
diff --git a/tools/winebuild/res32.c b/tools/winebuild/res32.c
|
||||
index b20dfb4..2f35918 100644
|
||||
index bd55bb2..d932901 100644
|
||||
--- a/tools/winebuild/res32.c
|
||||
+++ b/tools/winebuild/res32.c
|
||||
@@ -534,7 +534,6 @@ void output_bin_resources( DLLSPEC *spec, unsigned int start_rva )
|
||||
@@ -539,7 +539,6 @@ void output_bin_resources( DLLSPEC *spec, unsigned int start_rva )
|
||||
if (!spec->nb_resources) return;
|
||||
|
||||
tree = build_resource_tree( spec, &data_offset );
|
||||
@ -47,10 +47,10 @@ index b20dfb4..2f35918 100644
|
||||
/* output the resource directories */
|
||||
|
||||
diff --git a/tools/winebuild/spec32.c b/tools/winebuild/spec32.c
|
||||
index dc63c39..59cced1 100644
|
||||
index f9b6a72..f176519 100644
|
||||
--- a/tools/winebuild/spec32.c
|
||||
+++ b/tools/winebuild/spec32.c
|
||||
@@ -811,11 +811,11 @@ void BuildSpec32File( DLLSPEC *spec )
|
||||
@@ -823,11 +823,11 @@ void output_pe_module( DLLSPEC *spec )
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
@ -65,7 +65,7 @@ index dc63c39..59cced1 100644
|
||||
{
|
||||
static const unsigned char dll_code_section[] = { 0x31, 0xc0, /* xor %eax,%eax */
|
||||
0xc2, 0x0c, 0x00 }; /* ret $12 */
|
||||
@@ -827,22 +827,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -839,22 +839,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
const unsigned int page_size = get_page_size();
|
||||
const unsigned int section_align = page_size;
|
||||
const unsigned int file_align = 0x200;
|
||||
@ -88,7 +88,7 @@ index dc63c39..59cced1 100644
|
||||
|
||||
put_word( 0x5a4d ); /* e_magic */
|
||||
put_word( 0x40 ); /* e_cblp */
|
||||
@@ -870,7 +856,7 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -882,7 +868,7 @@ void output_fake_module( DLLSPEC *spec )
|
||||
put_dword( lfanew );
|
||||
|
||||
put_data( fakedll_signature, sizeof(fakedll_signature) );
|
||||
@ -97,7 +97,7 @@ index dc63c39..59cced1 100644
|
||||
|
||||
put_dword( 0x4550 ); /* Signature */
|
||||
switch(target_cpu)
|
||||
@@ -894,11 +880,11 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -906,11 +892,11 @@ void output_fake_module( DLLSPEC *spec )
|
||||
IMAGE_NT_OPTIONAL_HDR32_MAGIC ); /* Magic */
|
||||
put_byte( 7 ); /* MajorLinkerVersion */
|
||||
put_byte( 10 ); /* MinorLinkerVersion */
|
||||
@ -112,7 +112,7 @@ index dc63c39..59cced1 100644
|
||||
if (get_ptr_size() == 4) put_dword( 0 ); /* BaseOfData */
|
||||
put_pword( 0x10000000 ); /* ImageBase */
|
||||
put_dword( section_align ); /* SectionAlignment */
|
||||
@@ -910,8 +896,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -922,8 +908,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
put_word( spec->subsystem_major ); /* MajorSubsystemVersion */
|
||||
put_word( spec->subsystem_minor ); /* MinorSubsystemVersion */
|
||||
put_dword( 0 ); /* Win32VersionValue */
|
||||
@ -123,7 +123,7 @@ index dc63c39..59cced1 100644
|
||||
put_dword( 0 ); /* CheckSum */
|
||||
put_word( spec->subsystem ); /* Subsystem */
|
||||
put_word( spec->dll_characteristics ); /* DllCharacteristics */
|
||||
@@ -924,10 +910,10 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -936,10 +922,10 @@ void output_fake_module( DLLSPEC *spec )
|
||||
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_EXPORT] */
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT] */
|
||||
@ -137,7 +137,7 @@ index dc63c39..59cced1 100644
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -937,8 +923,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -949,8 +935,8 @@ void output_fake_module( DLLSPEC *spec )
|
||||
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_EXCEPTION] */
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_SECURITY] */
|
||||
@ -148,7 +148,7 @@ index dc63c39..59cced1 100644
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_DEBUG] */
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_COPYRIGHT] */
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[IMAGE_DIRECTORY_ENTRY_GLOBALPTR] */
|
||||
@@ -951,62 +937,95 @@ void output_fake_module( DLLSPEC *spec )
|
||||
@@ -963,62 +949,95 @@ void output_fake_module( DLLSPEC *spec )
|
||||
put_dword( 0 ); put_dword( 0 ); /* DataDirectory[15] */
|
||||
|
||||
/* .text section */
|
||||
@ -280,11 +280,11 @@ index dc63c39..59cced1 100644
|
||||
}
|
||||
|
||||
diff --git a/tools/winebuild/utils.c b/tools/winebuild/utils.c
|
||||
index f331903..7188d10 100644
|
||||
index 355c5ab..26ef44e 100644
|
||||
--- a/tools/winebuild/utils.c
|
||||
+++ b/tools/winebuild/utils.c
|
||||
@@ -37,6 +37,7 @@
|
||||
#include <sys/mman.h>
|
||||
@@ -34,6 +34,7 @@
|
||||
# include <sys/stat.h>
|
||||
#endif
|
||||
|
||||
+#include "wine/list.h"
|
||||
@ -378,7 +378,7 @@ index f331903..7188d10 100644
|
||||
static void check_output_buffer_space( size_t size )
|
||||
{
|
||||
if (output_buffer_pos + size >= output_buffer_size)
|
||||
@@ -560,7 +639,9 @@ void init_output_buffer(void)
|
||||
@@ -555,7 +634,9 @@ void init_output_buffer(void)
|
||||
{
|
||||
output_buffer_size = 1024;
|
||||
output_buffer_pos = 0;
|
||||
@ -388,7 +388,7 @@ index f331903..7188d10 100644
|
||||
}
|
||||
|
||||
void flush_output_buffer(void)
|
||||
@@ -570,6 +651,7 @@ void flush_output_buffer(void)
|
||||
@@ -565,6 +646,7 @@ void flush_output_buffer(void)
|
||||
fatal_error( "Error writing to %s\n", output_file_name );
|
||||
close_output_file();
|
||||
free( output_buffer );
|
||||
@ -396,7 +396,7 @@ index f331903..7188d10 100644
|
||||
}
|
||||
|
||||
unsigned char get_byte(void)
|
||||
@@ -609,12 +691,14 @@ void put_data( const void *data, size_t size )
|
||||
@@ -604,12 +686,14 @@ void put_data( const void *data, size_t size )
|
||||
check_output_buffer_space( size );
|
||||
memcpy( output_buffer + output_buffer_pos, data, size );
|
||||
output_buffer_pos += size;
|
||||
@ -411,7 +411,7 @@ index f331903..7188d10 100644
|
||||
}
|
||||
|
||||
void put_word( unsigned short val )
|
||||
@@ -661,6 +745,14 @@ void align_output( unsigned int align )
|
||||
@@ -656,6 +740,14 @@ void align_output( unsigned int align )
|
||||
output_buffer_pos += size;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user