diff --git a/patches/Staging/0003-loader-Add-commandline-option-patches-to-show-the-pa.patch b/patches/Staging/0003-loader-Add-commandline-option-patches-to-show-the-pa.patch index 67fe42f1..f92aac1e 100644 --- a/patches/Staging/0003-loader-Add-commandline-option-patches-to-show-the-pa.patch +++ b/patches/Staging/0003-loader-Add-commandline-option-patches-to-show-the-pa.patch @@ -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 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 diff --git a/patches/Staging/0004-loader-Add-commandline-option-check-libs.patch b/patches/Staging/0004-loader-Add-commandline-option-check-libs.patch index 457d2a7c..0bf8528b 100644 --- a/patches/Staging/0004-loader-Add-commandline-option-check-libs.patch +++ b/patches/Staging/0004-loader-Add-commandline-option-check-libs.patch @@ -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?= 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 #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 diff --git a/patches/d3dx9_36-32bpp_Alpha_Channel/0001-d3dx9-Return-D3DFMT_A8R8G8B8-in-D3DXGetImageInfoFrom.patch b/patches/d3dx9_36-32bpp_Alpha_Channel/0001-d3dx9-Return-D3DFMT_A8R8G8B8-in-D3DXGetImageInfoFrom.patch deleted file mode 100644 index 81f59301..00000000 --- a/patches/d3dx9_36-32bpp_Alpha_Channel/0001-d3dx9-Return-D3DFMT_A8R8G8B8-in-D3DXGetImageInfoFrom.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 6c77d9cea2889d1cacbe8d774f07aef887dee3fa Mon Sep 17 00:00:00 2001 -From: Christian Costa -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 - diff --git a/patches/d3dx9_36-32bpp_Alpha_Channel/definition b/patches/d3dx9_36-32bpp_Alpha_Channel/definition deleted file mode 100644 index 875f5553..00000000 --- a/patches/d3dx9_36-32bpp_Alpha_Channel/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for 32 bpp BMP with alpha diff --git a/patches/d3dx9_36-Dummy_Skininfo/0001-d3dx9_36-Return-dummy-skininfo-interface-in-D3DXLoad.patch b/patches/d3dx9_36-Dummy_Skininfo/0001-d3dx9_36-Return-dummy-skininfo-interface-in-D3DXLoad.patch deleted file mode 100644 index 3a2813cc..00000000 --- a/patches/d3dx9_36-Dummy_Skininfo/0001-d3dx9_36-Return-dummy-skininfo-interface-in-D3DXLoad.patch +++ /dev/null @@ -1,81 +0,0 @@ -From c20687718ab550c2f8b481ebad484986cdd588e4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -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 - diff --git a/patches/d3dx9_36-Dummy_Skininfo/definition b/patches/d3dx9_36-Dummy_Skininfo/definition deleted file mode 100644 index f8f3d4c8..00000000 --- a/patches/d3dx9_36-Dummy_Skininfo/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [33904] Return dummy ID3DXSkinInfo interface when skinning info not present diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 1c92c1ac..a8724e7a 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -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 diff --git a/patches/taskmgr-Memory_Usage/0004-taskmgr-Use-different-units-depending-on-memory-usag.patch b/patches/taskmgr-Memory_Usage/0004-taskmgr-Use-different-units-depending-on-memory-usag.patch deleted file mode 100644 index 82b10cd6..00000000 --- a/patches/taskmgr-Memory_Usage/0004-taskmgr-Use-different-units-depending-on-memory-usag.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 7136c5e40b705658e8f30f8d11c185aef1cc8f6e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -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 - diff --git a/patches/winebuild-Fake_Dlls/0004-winebuild-Use-multipass-label-system-to-generate-fak.patch b/patches/winebuild-Fake_Dlls/0004-winebuild-Use-multipass-label-system-to-generate-fak.patch index ab57a8c7..781b7d51 100644 --- a/patches/winebuild-Fake_Dlls/0004-winebuild-Use-multipass-label-system-to-generate-fak.patch +++ b/patches/winebuild-Fake_Dlls/0004-winebuild-Use-multipass-label-system-to-generate-fak.patch @@ -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?= 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 +@@ -34,6 +34,7 @@ + # include #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; }