winehq.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
January
2003
December
November
October
September
August
July
June
May
April
March
February
January
2002
December
November
October
September
August
July
June
May
April
March
February
January
2001
December
November
October
September
August
July
June
May
April
March
February
List overview
wine-commits
August 2020
----- 2025 -----
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
----- 2003 -----
December 2003
November 2003
October 2003
September 2003
August 2003
July 2003
June 2003
May 2003
April 2003
March 2003
February 2003
January 2003
----- 2002 -----
December 2002
November 2002
October 2002
September 2002
August 2002
July 2002
June 2002
May 2002
April 2002
March 2002
February 2002
January 2002
----- 2001 -----
December 2001
November 2001
October 2001
September 2001
August 2001
July 2001
June 2001
May 2001
April 2001
March 2001
February 2001
wine-commits@winehq.org
2 participants
692 discussions
Start a n
N
ew thread
Roman Pišl : wineconsole: Don't activate window when computing positions.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: e9a5486937d6a13931b9571f36dfca9abea685b2 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=e9a5486937d6a13931b9571f…
Author: Roman Pišl <rpisl(a)seznam.cz> Date: Tue Apr 21 22:09:07 2020 +0200 wineconsole: Don't activate window when computing positions. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=48740
Signed-off-by: Roman Pišl <rpisl(a)seznam.cz> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 8d8eab04fbe6f0af1e0768682c8f6178989f0177) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- programs/wineconsole/user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/wineconsole/user.c b/programs/wineconsole/user.c index 212c65cee4..de3f4ae98c 100644 --- a/programs/wineconsole/user.c +++ b/programs/wineconsole/user.c @@ -253,7 +253,7 @@ static void WCUSER_ComputePositions(struct inner_data* data) } SetWindowPos(data->hWnd, 0, 0, 0, r.right - r.left + dx, r.bottom - r.top + dy, - SWP_NOMOVE|SWP_NOZORDER); + SWP_NOMOVE|SWP_NOZORDER|SWP_NOACTIVATE); WCUSER_ShapeCursor(data, data->curcfg.cursor_size, data->curcfg.cursor_visible, TRUE); WCUSER_PosCursor(data); }
1
0
0
0
Alistair Leslie-Hughes : d3dx9: Add support for D3DFMT_P8 in DDS files.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: de2572ae12a3c00656549ba7d77da642292f8376 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=de2572ae12a3c00656549ba7…
Author: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com> Date: Tue Apr 14 09:28:45 2020 +0200 d3dx9: Add support for D3DFMT_P8 in DDS files. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=48731
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com> Signed-off-by: Matteo Bruni <mbruni(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit bb222133a81581622c88c0d34534bc88a556f1f2) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/d3dx9_36/surface.c | 12 ++++++ dlls/d3dx9_36/tests/surface.c | 92 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+) diff --git a/dlls/d3dx9_36/surface.c b/dlls/d3dx9_36/surface.c index 29325d5c0a..97236f32f4 100644 --- a/dlls/d3dx9_36/surface.c +++ b/dlls/d3dx9_36/surface.c @@ -108,6 +108,7 @@ static const GUID *d3dformat_to_wic_guid(D3DFORMAT format) #define DDS_PF_ALPHA 0x1 #define DDS_PF_ALPHA_ONLY 0x2 #define DDS_PF_FOURCC 0x4 +#define DDS_PF_INDEXED 0x20 #define DDS_PF_RGB 0x40 #define DDS_PF_YUV 0x200 #define DDS_PF_LUMINANCE 0x20000 @@ -348,6 +349,15 @@ static D3DFORMAT dds_alpha_to_d3dformat(const struct dds_pixel_format *pixel_for return D3DFMT_UNKNOWN; } +static D3DFORMAT dds_indexed_to_d3dformat(const struct dds_pixel_format *pixel_format) +{ + if (pixel_format->bpp == 8) + return D3DFMT_P8; + + WARN("Unknown indexed pixel format (%u).\n", pixel_format->bpp); + return D3DFMT_UNKNOWN; +} + static D3DFORMAT dds_bump_to_d3dformat(const struct dds_pixel_format *pixel_format) { if (pixel_format->bpp == 16 && pixel_format->rmask == 0x00ff && pixel_format->gmask == 0xff00) @@ -369,6 +379,8 @@ static D3DFORMAT dds_pixel_format_to_d3dformat(const struct dds_pixel_format *pi if (pixel_format->flags & DDS_PF_FOURCC) return dds_fourcc_to_d3dformat(pixel_format->fourcc); + if (pixel_format->flags & DDS_PF_INDEXED) + return dds_indexed_to_d3dformat(pixel_format); if (pixel_format->flags & DDS_PF_RGB) return dds_rgb_to_d3dformat(pixel_format); if (pixel_format->flags & DDS_PF_LUMINANCE) diff --git a/dlls/d3dx9_36/tests/surface.c b/dlls/d3dx9_36/tests/surface.c index 1a39d82961..3e7a7b3ee6 100644 --- a/dlls/d3dx9_36/tests/surface.c +++ b/dlls/d3dx9_36/tests/surface.c @@ -107,6 +107,87 @@ static const unsigned char noimage[4] = { 0x11,0x22,0x33,0x44 }; +/* 16x4 8-bit dds */ +static const unsigned char dds_8bit[] = +{ + 0x44,0x44,0x53,0x20,0x7c,0x00,0x00,0x00,0x0f,0x10,0x00,0x00,0x04,0x00,0x00,0x00, + 0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, + 0x47,0x49,0x4d,0x50,0x2d,0x44,0x44,0x53,0x5a,0x09,0x03,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00, + 0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff, + 0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0xec,0x27,0x00,0xff,0x8c,0xcd,0x12,0xff, + 0x78,0x01,0x14,0xff,0x50,0xcd,0x12,0xff,0x00,0x3d,0x8c,0xff,0x02,0x00,0x00,0xff, + 0x47,0x00,0x00,0xff,0xda,0x07,0x02,0xff,0x50,0xce,0x12,0xff,0xea,0x11,0x01,0xff, + 0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x08,0x3d,0x8c,0xff,0x08,0x01,0x00,0xff, + 0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x60,0xcc,0x12,0xff, + 0xa1,0xb2,0xd4,0xff,0xda,0x07,0x02,0xff,0x47,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0x50,0xce,0x12,0xff,0x00,0x00,0x14,0xff,0xa8,0xcc,0x12,0xff,0x3c,0xb2,0xd4,0xff, + 0xda,0x07,0x02,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0xff, + 0x21,0x00,0x00,0xff,0xd8,0xcb,0x12,0xff,0x54,0xcd,0x12,0xff,0x8b,0x4f,0xd5,0xff, + 0x00,0x04,0xda,0xff,0x00,0x00,0x00,0xff,0x3d,0x04,0x91,0xff,0x70,0xce,0x18,0xff, + 0xb4,0xcc,0x12,0xff,0x6b,0x4e,0xd5,0xff,0xb0,0xcc,0x12,0xff,0x00,0x00,0x00,0xff, + 0xc8,0x05,0x91,0xff,0x98,0xc7,0xcc,0xff,0x7c,0xcd,0x12,0xff,0x51,0x05,0x91,0xff, + 0x48,0x07,0x14,0xff,0x6d,0x05,0x91,0xff,0x00,0x07,0xda,0xff,0xa0,0xc7,0xcc,0xff, + 0x00,0x07,0xda,0xff,0x3a,0x77,0xd5,0xff,0xda,0x07,0x02,0xff,0x7c,0x94,0xd4,0xff, + 0xe0,0xce,0xd6,0xff,0x0a,0x80,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0x78,0x9a,0xab,0xff,0xde,0x08,0x18,0xff,0xda,0x07,0x02,0xff,0x30,0x00,0x00,0xff, + 0x00,0x00,0x00,0xff,0x50,0xce,0x12,0xff,0x8c,0xcd,0x12,0xff,0xd0,0xb7,0xd8,0xff, + 0x00,0x00,0x00,0xff,0x60,0x32,0xd9,0xff,0x30,0xc1,0x1a,0xff,0xa8,0xcd,0x12,0xff, + 0xa4,0xcd,0x12,0xff,0xc0,0x1d,0x4b,0xff,0x46,0x71,0x0e,0xff,0xc0,0x1d,0x4b,0xff, + 0x09,0x87,0xd4,0xff,0x00,0x00,0x00,0xff,0xf6,0x22,0x00,0xff,0x64,0xcd,0x12,0xff, + 0x00,0x00,0x00,0xff,0xca,0x1d,0x4b,0xff,0x09,0x87,0xd4,0xff,0xaa,0x02,0x05,0xff, + 0x82,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0xc0,0x1d,0x4b,0xff, + 0xcd,0xab,0xba,0xff,0x00,0x00,0x00,0xff,0xa4,0xcd,0x12,0xff,0xc0,0x1d,0x4b,0xff, + 0xd4,0xcd,0x12,0xff,0xa6,0x4c,0xd5,0xff,0x00,0xf0,0xfd,0xff,0xd4,0xcd,0x12,0xff, + 0xf4,0x4c,0xd5,0xff,0x90,0xcd,0x12,0xff,0xc2,0x4c,0xd5,0xff,0x82,0x00,0x00,0xff, + 0xaa,0x02,0x05,0xff,0x88,0xd4,0xba,0xff,0x14,0x00,0x00,0xff,0x01,0x00,0x00,0xff, + 0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x10,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0x0c,0x08,0x13,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0xd0,0xcd,0x12,0xff,0xc6,0x84,0xf1,0xff,0x7c,0x84,0xf1,0xff,0x20,0x20,0xf5,0xff, + 0x00,0x00,0x0a,0xff,0xf0,0xb0,0x94,0xff,0x64,0x6c,0xf1,0xff,0x85,0x6c,0xf1,0xff, + 0x8b,0x4f,0xd5,0xff,0x00,0x04,0xda,0xff,0x88,0xd4,0xba,0xff,0x82,0x00,0x00,0xff, + 0x39,0xde,0xd4,0xff,0x10,0x50,0xd5,0xff,0xaa,0x02,0x05,0xff,0x00,0x00,0x00,0xff, + 0x4f,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x5c,0xce,0x12,0xff,0x00,0x00,0x00,0xff, + 0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x5c,0xce,0x12,0xff, + 0xaa,0x02,0x05,0xff,0x4c,0xce,0x12,0xff,0x39,0xe6,0xd4,0xff,0x00,0x00,0x00,0xff, + 0x82,0x00,0x00,0xff,0x00,0x00,0x00,0xff,0x5b,0xe6,0xd4,0xff,0x00,0x00,0x00,0xff, + 0x00,0x00,0x00,0xff,0x68,0x50,0xcd,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0x00,0x00,0x00,0xff,0x10,0x00,0x00,0xff,0xe3,0xea,0x90,0xff,0x5c,0xce,0x12,0xff, + 0x18,0x00,0x00,0xff,0x88,0xd4,0xba,0xff,0x82,0x00,0x00,0xff,0x00,0x00,0x00,0xff, + 0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, + 0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, + 0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, + 0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01 +}; + /* 2x2 24-bit dds, 2 mipmaps */ static const unsigned char dds_24bit[] = { 0x44,0x44,0x53,0x20,0x7c,0x00,0x00,0x00,0x07,0x10,0x0a,0x00,0x02,0x00,0x00,0x00, @@ -649,6 +730,17 @@ static void test_D3DXGetImageInfo(void) ok(info.ImageFileFormat == D3DXIFF_DDS, "Got image file format %#x, expected %#x\n", info.ImageFileFormat, D3DXIFF_DDS); } else skip("Couldn't get image info from 16-bit DDS file in memory\n"); + memset(&info, 0, sizeof(info)); + hr = D3DXGetImageInfoFromFileInMemory(dds_8bit, sizeof(dds_8bit), &info); + ok(hr == D3D_OK, "D3DXGetImageInfoFromFileInMemory returned %#x\n", hr); + ok(info.Width == 16, "Got width %u.\n", info.Width); + ok(info.Height == 4, "Got height %u.\n", info.Height); + ok(info.Depth == 1, "Got depth %u.\n", info.Depth); + ok(info.MipLevels == 1, "Got miplevels %u.\n", info.MipLevels); + ok(info.Format == D3DFMT_P8, "Got format %#x.\n", info.Format); + ok(info.ResourceType == D3DRTYPE_TEXTURE, "Got resource type %#x.\n", info.ResourceType); + ok(info.ImageFileFormat == D3DXIFF_DDS, "Got image file format %#x.\n", info.ImageFileFormat); + hr = D3DXGetImageInfoFromFileInMemory(dds_cube_map, sizeof(dds_cube_map), &info); ok(hr == D3D_OK, "D3DXGetImageInfoFromFileInMemory returned %#x, expected %#x\n", hr, D3D_OK); if (hr == D3D_OK) {
1
0
0
0
Michael Müller : opengl32: Treat invalid pixel types as PFD_TYPE_RGBA in wglChoosePixelFormat.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 3a939d246494905cf00b9728088e9e3a5d9d9708 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=3a939d246494905cf00b9728…
Author: Michael Müller <michael(a)fds-team.de> Date: Fri Apr 17 12:34:00 2020 +0300 opengl32: Treat invalid pixel types as PFD_TYPE_RGBA in wglChoosePixelFormat. Also fixes "Plebby Quest: The Crusades". Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=43638
Signed-off-by: Paul Gofman <pgofman(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit ee12fb0e3241a1458ea81afaf8fbf822e53f0902) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/opengl32/tests/opengl.c | 59 ++++++++++++++++++++++++++++---------------- dlls/opengl32/wgl.c | 2 +- 2 files changed, 39 insertions(+), 22 deletions(-) diff --git a/dlls/opengl32/tests/opengl.c b/dlls/opengl32/tests/opengl.c index c2fc4f4092..db5ad0ad76 100644 --- a/dlls/opengl32/tests/opengl.c +++ b/dlls/opengl32/tests/opengl.c @@ -220,7 +220,7 @@ static void test_pbuffers(HDC hdc) else skip("Pbuffer test for offscreen pixelformat skipped as no offscreen-only format with pbuffer capabilities has been found\n"); } -static int test_pfd(const PIXELFORMATDESCRIPTOR *pfd) +static int test_pfd(const PIXELFORMATDESCRIPTOR *pfd, PIXELFORMATDESCRIPTOR *fmt) { int pf; HDC hdc; @@ -233,6 +233,12 @@ static int test_pfd(const PIXELFORMATDESCRIPTOR *pfd) hdc = GetDC( hwnd ); pf = ChoosePixelFormat( hdc, pfd ); + if (pf && fmt) + { + memset(fmt, 0, sizeof(*fmt)); + ok(DescribePixelFormat( hdc, pf, sizeof(*fmt), fmt ), + "DescribePixelFormat failed with error: %u\n", GetLastError()); + } ReleaseDC( hwnd, hdc ); DestroyWindow( hwnd ); @@ -259,57 +265,68 @@ static void test_choosepixelformat(void) 0, /* reserved */ 0, 0, 0 /* layer masks */ }; + PIXELFORMATDESCRIPTOR ret_fmt; - ok( test_pfd(&pfd), "Simple pfd failed\n" ); + ok( test_pfd(&pfd, NULL), "Simple pfd failed\n" ); pfd.dwFlags |= PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); pfd.dwFlags |= PFD_STEREO_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_STEREO_DONTCARE; + pfd.iPixelType = 32; + ok( test_pfd(&pfd, &ret_fmt), "Invalid pixel format 32 failed\n" ); + ok( ret_fmt.iPixelType == PFD_TYPE_RGBA, "Expected pixel type PFD_TYPE_RGBA, got %d\n", ret_fmt.iPixelType ); + pfd.iPixelType = 33; + ok( test_pfd(&pfd, &ret_fmt), "Invalid pixel format 33 failed\n" ); + ok( ret_fmt.iPixelType == PFD_TYPE_RGBA, "Expected pixel type PFD_TYPE_RGBA, got %d\n", ret_fmt.iPixelType ); + pfd.iPixelType = 15; + ok( test_pfd(&pfd, &ret_fmt), "Invalid pixel format 15 failed\n" ); + ok( ret_fmt.iPixelType == PFD_TYPE_RGBA, "Expected pixel type PFD_TYPE_RGBA, got %d\n", ret_fmt.iPixelType ); + pfd.iPixelType = PFD_TYPE_RGBA; pfd.cColorBits = 32; - ok( test_pfd(&pfd), "Simple pfd failed\n" ); + ok( test_pfd(&pfd, NULL), "Simple pfd failed\n" ); pfd.dwFlags |= PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); pfd.dwFlags |= PFD_STEREO_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_STEREO_DONTCARE; pfd.cColorBits = 0; pfd.cAlphaBits = 8; - ok( test_pfd(&pfd), "Simple pfd failed\n" ); + ok( test_pfd(&pfd, NULL), "Simple pfd failed\n" ); pfd.dwFlags |= PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); pfd.dwFlags |= PFD_STEREO_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_STEREO_DONTCARE; pfd.cAlphaBits = 0; pfd.cStencilBits = 8; - ok( test_pfd(&pfd), "Simple pfd failed\n" ); + ok( test_pfd(&pfd, NULL), "Simple pfd failed\n" ); pfd.dwFlags |= PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); pfd.dwFlags |= PFD_STEREO_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_STEREO_DONTCARE; pfd.cStencilBits = 0; pfd.cAuxBuffers = 1; - ok( test_pfd(&pfd), "Simple pfd failed\n" ); + ok( test_pfd(&pfd, NULL), "Simple pfd failed\n" ); pfd.dwFlags |= PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE failed\n" ); pfd.dwFlags |= PFD_STEREO_DONTCARE; - ok( test_pfd(&pfd), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_DOUBLEBUFFER_DONTCARE|PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_DOUBLEBUFFER_DONTCARE; - ok( test_pfd(&pfd), "PFD_STEREO_DONTCARE failed\n" ); + ok( test_pfd(&pfd, NULL), "PFD_STEREO_DONTCARE failed\n" ); pfd.dwFlags &= ~PFD_STEREO_DONTCARE; pfd.cAuxBuffers = 0; } diff --git a/dlls/opengl32/wgl.c b/dlls/opengl32/wgl.c index c6018b0c7b..008778c532 100644 --- a/dlls/opengl32/wgl.c +++ b/dlls/opengl32/wgl.c @@ -475,7 +475,7 @@ INT WINAPI wglChoosePixelFormat(HDC hdc, const PIXELFORMATDESCRIPTOR* ppfd) { if (!wglDescribePixelFormat( hdc, i, sizeof(format), &format )) continue; - if (ppfd->iPixelType != format.iPixelType) + if ((ppfd->iPixelType == PFD_TYPE_COLORINDEX) != (format.iPixelType == PFD_TYPE_COLORINDEX)) { TRACE( "pixel type mismatch for iPixelFormat=%d\n", i ); continue;
1
0
0
0
Owen Rudge : winecfg: Return 0 on success when setting Windows version.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 944588161418f7631c7068dca43f5d3b42a9d316 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=944588161418f7631c7068dc…
Author: Owen Rudge <orudge(a)codeweavers.com> Date: Mon Apr 20 12:53:54 2020 +0100 winecfg: Return 0 on success when setting Windows version. The /V switch to winecfg was incorrectly passing the BOOL result through as the application exit code. Signed-off-by: Owen Rudge <orudge(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 7b485dbf68e2ace921a59dcb50ef82d741fb8949) Conflicts: programs/winecfg/main.c Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- programs/winecfg/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/winecfg/main.c b/programs/winecfg/main.c index c5d4807e93..ef11774c15 100644 --- a/programs/winecfg/main.c +++ b/programs/winecfg/main.c @@ -199,7 +199,7 @@ ProcessCmdLine(LPSTR lpCmdLine) if ((lpCmdLine[1] == 'V' || lpCmdLine[1] == 'v') && (lstrlenA(lpCmdLine) > 4)) { - return set_winver_from_string(&lpCmdLine[3]); + return set_winver_from_string(&lpCmdLine[3]) ? 0 : 1; } return -1;
1
0
0
0
Owen Rudge : winecfg: Add support for '/v' parameter allowing Windows version to be changed.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 4d063ffc467d5964dfd6c8e7ffe2a4db2fb1e92f URL:
https://source.winehq.org/git/wine.git/?a=commit;h=4d063ffc467d5964dfd6c8e7…
Author: Owen Rudge <orudge(a)codeweavers.com> Date: Thu Apr 16 15:06:27 2020 +0100 winecfg: Add support for '/v' parameter allowing Windows version to be changed. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=41559
Signed-off-by: Owen Rudge <orudge(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 90c0123533377e9a2a7f27762ac0d514e88b5b1a) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- programs/winecfg/appdefaults.c | 101 ++++++++++++++++++++++++++--------------- programs/winecfg/main.c | 35 ++++++++------ programs/winecfg/winecfg.h | 3 ++ 3 files changed, 87 insertions(+), 52 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=4d063ffc467d5964dfd6…
1
0
0
0
Roman Pišl : user32/edit: Avoid division by zero during initialization.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: e1cac281d94b6a87d079026fd8b4f07c0f8a25b5 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=e1cac281d94b6a87d079026f…
Author: Roman Pišl <rpisl(a)seznam.cz> Date: Mon Apr 20 12:20:13 2020 +0200 user32/edit: Avoid division by zero during initialization. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=19239
Signed-off-by: Roman Pišl <rpisl(a)seznam.cz> Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit d5e591d3cb55530cab33e5f6114b1519ec286d15) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/user32/edit.c | 4 +-- dlls/user32/tests/edit.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 2 deletions(-) diff --git a/dlls/user32/edit.c b/dlls/user32/edit.c index 557a091c0d..aba6a084a2 100644 --- a/dlls/user32/edit.c +++ b/dlls/user32/edit.c @@ -465,7 +465,7 @@ static SCRIPT_STRING_ANALYSIS EDIT_UpdateUniscribeData(EDITSTATE *es, HDC dc, IN static inline INT get_vertical_line_count(EDITSTATE *es) { - INT vlc = (es->format_rect.bottom - es->format_rect.top) / es->line_height; + INT vlc = es->line_height ? (es->format_rect.bottom - es->format_rect.top) / es->line_height : 0; return max(1,vlc); } @@ -1638,7 +1638,7 @@ static void EDIT_UpdateScrollInfo(EDITSTATE *es) si.fMask = SIF_PAGE | SIF_POS | SIF_RANGE | SIF_DISABLENOSCROLL; si.nMin = 0; si.nMax = es->line_count - 1; - si.nPage = (es->format_rect.bottom - es->format_rect.top) / es->line_height; + si.nPage = es->line_height ? (es->format_rect.bottom - es->format_rect.top) / es->line_height : 0; si.nPos = es->y_offset; TRACE("SB_VERT, nMin=%d, nMax=%d, nPage=%d, nPos=%d\n", si.nMin, si.nMax, si.nPage, si.nPos); diff --git a/dlls/user32/tests/edit.c b/dlls/user32/tests/edit.c index e3ed3341d6..2289bbf03f 100644 --- a/dlls/user32/tests/edit.c +++ b/dlls/user32/tests/edit.c @@ -1743,6 +1743,71 @@ static BOOL is_font_installed(const char*name) return ret; } +static WNDPROC orig_class_proc; + +static LRESULT CALLBACK test_class_proc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + RECT rect; + LRESULT result, r; + + switch (message) + { + case WM_NCCREATE: + result = CallWindowProcA(orig_class_proc, hwnd, message, wParam, lParam); + + memset(&rect, 0, sizeof(rect)); + SendMessageA(hwnd, EM_GETRECT, 0, (LPARAM)&rect); + ok(!rect.right && !rect.bottom, "Invalid size after NCCREATE: %d x %d\n", rect.right, rect.bottom); + + /* test that messages between WM_NCCREATE and WM_CREATE + don't crash or cause unexpected behavior */ + r = SendMessageA(hwnd, EM_SETSEL, 0, 0); + ok(r == 1, "Returned %ld, expected 1.\n", r); + r = SendMessageA(hwnd, WM_SIZE, 0, 0x00100010); + todo_wine ok(r == 1, "Returned %ld, expected 1.\n", r); + + return result; + + case WM_CREATE: + /* test that messages between WM_NCCREATE and WM_CREATE + don't crash or cause unexpected behavior */ + r = SendMessageA(hwnd, EM_SETSEL, 0, 0); + ok(r == 1, "Returned %ld, expected 1.\n", r); + r = SendMessageA(hwnd, WM_SIZE, 0, 0x00100010); + todo_wine ok(r == 1, "Returned %ld, expected 1.\n", r); + + break; + } + + return CallWindowProcA(orig_class_proc, hwnd, message, wParam, lParam); +} + +static void test_initialization(void) +{ + BOOL ret; + ATOM atom; + HWND hwEdit; + WNDCLASSA cls; + + ret = GetClassInfoA(NULL, "Edit", &cls); + ok(ret, "Failed to get class info.\n"); + + orig_class_proc = cls.lpfnWndProc; + cls.lpfnWndProc = test_class_proc; + cls.lpszClassName = "TestClassName"; + + atom = RegisterClassA(&cls); + ok(atom != 0, "Failed to register class.\n"); + + hwEdit = CreateWindowExA(0, (LPCSTR)MAKEINTATOM(atom), "Text Text", + ES_MULTILINE | WS_BORDER | ES_AUTOHSCROLL | ES_AUTOVSCROLL | WS_VSCROLL, + 10, 10, 300, 300, NULL, NULL, hinst, NULL); + ok(hwEdit != NULL, "Failed to create a window.\n"); + + DestroyWindow(hwEdit); + UnregisterClassA((LPCSTR)MAKEINTATOM(atom), hinst); +} + static void test_margins(void) { HWND hwEdit; @@ -3268,6 +3333,7 @@ START_TEST(edit) test_edit_control_6(); test_edit_control_limittext(); test_edit_control_scroll(); + test_initialization(); test_margins(); test_margins_font_change(); test_text_position();
1
0
0
0
Akihiro Sagawa : ddraw: Allow to create managed textures with DDSCAPS_TEXTURE|DDSCAPS_3DDEVICE caps.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 2362c935aec407dff0c72c91caa387282b88c98b URL:
https://source.winehq.org/git/wine.git/?a=commit;h=2362c935aec407dff0c72c91…
Author: Akihiro Sagawa <sagawa.aki(a)gmail.com> Date: Thu Apr 2 00:13:45 2020 +0900 ddraw: Allow to create managed textures with DDSCAPS_TEXTURE|DDSCAPS_3DDEVICE caps. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=48844
Signed-off-by: Akihiro Sagawa <sagawa.aki(a)gmail.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 62e13708d0cc01a4a9f613c077a680709bcc2e4c) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/ddraw/surface.c | 1 + dlls/ddraw/tests/ddraw4.c | 2 -- dlls/ddraw/tests/ddraw7.c | 2 -- 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c index fda42f2982..e30ec6feef 100644 --- a/dlls/ddraw/surface.c +++ b/dlls/ddraw/surface.c @@ -6209,6 +6209,7 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_ if (desc->ddsCaps.dwCaps2 & (DDSCAPS2_TEXTUREMANAGE | DDSCAPS2_D3DTEXTUREMANAGE)) { + wined3d_desc.bind_flags &= ~WINED3D_BIND_RENDER_TARGET; wined3d_desc.access = WINED3D_RESOURCE_ACCESS_GPU | WINED3D_RESOURCE_ACCESS_CPU | WINED3D_RESOURCE_ACCESS_MAP_R | WINED3D_RESOURCE_ACCESS_MAP_W; /* Managed textures have the system memory flag set. */ diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c index 511e68475a..86b05c743d 100644 --- a/dlls/ddraw/tests/ddraw4.c +++ b/dlls/ddraw/tests/ddraw4.c @@ -6212,10 +6212,8 @@ static void test_rt_caps(void) surface_desc.dwWidth = 640; surface_desc.dwHeight = 480; hr = IDirectDraw4_CreateSurface(ddraw, &surface_desc, &surface, NULL); - todo_wine_if(i == 10 || i == 11) ok(SUCCEEDED(hr), "Test %u: Failed to create surface with caps %#x and caps2 %#x, hr %#x.\n", i, test_data[i].caps_in, test_data[i].caps2_in, hr); - if (FAILED(hr)) continue; memset(&surface_desc, 0, sizeof(surface_desc)); surface_desc.dwSize = sizeof(surface_desc); diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c index 1dd6d759a4..f2dc6acd67 100644 --- a/dlls/ddraw/tests/ddraw7.c +++ b/dlls/ddraw/tests/ddraw7.c @@ -5947,10 +5947,8 @@ static void test_rt_caps(void) surface_desc.dwWidth = 640; surface_desc.dwHeight = 480; hr = IDirectDraw7_CreateSurface(ddraw, &surface_desc, &surface, NULL); - todo_wine_if(i == 10 || i == 11) ok(SUCCEEDED(hr), "Test %u: Failed to create surface with caps %#x and caps2 %#x, hr %#x.\n", i, test_data[i].caps_in, test_data[i].caps2_in, hr); - if (FAILED(hr)) continue; memset(&surface_desc, 0, sizeof(surface_desc)); surface_desc.dwSize = sizeof(surface_desc);
1
0
0
0
Akihiro Sagawa : ddraw/tests: Add more managed texture tests.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: bd2b989eed0a49abbe1adae2eae45bd04b656bbe URL:
https://source.winehq.org/git/wine.git/?a=commit;h=bd2b989eed0a49abbe1adae2…
Author: Akihiro Sagawa <sagawa.aki(a)gmail.com> Date: Thu Apr 2 00:13:42 2020 +0900 ddraw/tests: Add more managed texture tests. Signed-off-by: Akihiro Sagawa <sagawa.aki(a)gmail.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 8bb3ebced4a7bd11ad929eafe7d7ffb3a6e96463) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/ddraw/tests/ddraw4.c | 73 +++++++++++++++++++++++++++++++++++++++++++++-- dlls/ddraw/tests/ddraw7.c | 73 +++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 142 insertions(+), 4 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=bd2b989eed0a49abbe1a…
1
0
0
0
Zhipeng Zhao : explorer: Support '/cd,' command line option.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 981bb16f263c925d625e2a0f2a28c6282f48a118 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=981bb16f263c925d625e2a0f…
Author: Zhipeng Zhao <near2see(a)163.com> Date: Fri Mar 27 15:14:52 2020 +0800 explorer: Support '/cd,' command line option. '/cd,' is an undocumented option that seems to have the same effect as '/root,'. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=48816
. Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 9d79746425ba2e292f85f656227d703672076499) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- programs/explorer/explorer.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/programs/explorer/explorer.c b/programs/explorer/explorer.c index dcd09ac969..763fca381b 100644 --- a/programs/explorer/explorer.c +++ b/programs/explorer/explorer.c @@ -718,6 +718,7 @@ static void copy_path_root(LPWSTR root, LPWSTR path) * Command Line parameters are: * [/n] Opens in single-paned view for each selected items. This is default * [/e,] Uses Windows Explorer View + * [/cd,object] Specifies the root level of the view * [/root,object] Specifies the root level of the view * [/select,object] parent folder is opened and specified object is selected */ @@ -725,6 +726,7 @@ static void parse_command_line(LPWSTR commandline,parameters_struct *parameters) { static const WCHAR arg_n[] = {'/','n'}; static const WCHAR arg_e[] = {'/','e',','}; + static const WCHAR arg_cd[] = {'/','c','d',','}; static const WCHAR arg_root[] = {'/','r','o','o','t',','}; static const WCHAR arg_select[] = {'/','s','e','l','e','c','t',','}; static const WCHAR arg_desktop[] = {'/','d','e','s','k','t','o','p'}; @@ -745,6 +747,11 @@ static void parse_command_line(LPWSTR commandline,parameters_struct *parameters) parameters->explorer_mode = TRUE; p += ARRAY_SIZE( arg_e ); } + else if (wcsncmp(p, arg_cd, ARRAY_SIZE( arg_cd ))==0) + { + p += ARRAY_SIZE( arg_cd ); + p = copy_path_string(parameters->root,p); + } else if (wcsncmp(p, arg_root, ARRAY_SIZE( arg_root ))==0) { p += ARRAY_SIZE( arg_root );
1
0
0
0
Piotr Caban : msvcp90: Add std:_XLgamma implementation.
by Alexandre Julliard
07 Aug '20
07 Aug '20
Module: wine Branch: stable Commit: 702fa0ca4cae79452e77d1a5986143ff12ae03f6 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=702fa0ca4cae79452e77d1a5…
Author: Piotr Caban <piotr(a)codeweavers.com> Date: Fri Mar 27 16:33:44 2020 +0100 msvcp90: Add std:_XLgamma implementation. Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=48806
Signed-off-by: Piotr Caban <piotr(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit 70c3e08d32407c0d8ee751b124c438fc5910fc8d) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/msvcp100/msvcp100.spec | 6 +++--- dlls/msvcp110/msvcp110.spec | 6 +++--- dlls/msvcp120/msvcp120.spec | 6 +++--- dlls/msvcp120_app/msvcp120_app.spec | 6 +++--- dlls/msvcp140/msvcp140.spec | 6 +++--- dlls/msvcp90/math.c | 33 +++++++++++++++++++++++++++++++++ dlls/msvcp90/msvcp90.spec | 6 +++--- 7 files changed, 51 insertions(+), 18 deletions(-) diff --git a/dlls/msvcp100/msvcp100.spec b/dlls/msvcp100/msvcp100.spec index 4ca8d5b277..897b46fe90 100644 --- a/dlls/msvcp100/msvcp100.spec +++ b/dlls/msvcp100/msvcp100.spec @@ -1260,9 +1260,9 @@ @ cdecl -arch=win64 ?_Unlock@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@UEAAXXZ(ptr) basic_streambuf_wchar__Unlock @ thiscall -arch=win32 ?_Unlock@_Mutex@std@@QAEXXZ(ptr) mutex_unlock @ cdecl -arch=win64 ?_Unlock@_Mutex@std@@QEAAXXZ(ptr) mutex_unlock -@ stub ?_XLgamma@tr1@std@@YAMM@Z -@ stub ?_XLgamma@tr1@std@@YANN@Z -@ stub ?_XLgamma@tr1@std@@YAOO@Z +@ cdecl ?_XLgamma@tr1@std@@YAMM@Z(float) std__XLgamma_float +@ cdecl ?_XLgamma@tr1@std@@YANN@Z(double) std__XLgamma_double +@ cdecl ?_XLgamma@tr1@std@@YAOO@Z(double) std__XLgamma_double @ stub ?_Xbad@tr1@std@@YAXW4error_type@regex_constants@12@@Z @ stub ?_Xfunc@tr1@std@@YAXXZ @ cdecl -arch=win32 ?_Xinvalid_argument@std@@YAXPBD@Z(str) _Xinvalid_argument diff --git a/dlls/msvcp110/msvcp110.spec b/dlls/msvcp110/msvcp110.spec index eebc430b1e..8d79f8c9a8 100644 --- a/dlls/msvcp110/msvcp110.spec +++ b/dlls/msvcp110/msvcp110.spec @@ -1829,9 +1829,9 @@ @ stub -arch=win64 ?_W_Gettnames@_Locinfo@std@@QEBA?AV_Timevec@2@XZ @ stub -arch=win32 ?_Winerror_map@std@@YAPBDH@Z @ stub -arch=win64 ?_Winerror_map@std@@YAPEBDH@Z -@ stub ?_XLgamma@std@@YAMM@Z -@ stub ?_XLgamma@std@@YANN@Z -@ stub ?_XLgamma@std@@YAOO@Z +@ cdecl ?_XLgamma@std@@YAMM@Z(float) std__XLgamma_float +@ cdecl ?_XLgamma@std@@YANN@Z(double) std__XLgamma_double +@ cdecl ?_XLgamma@std@@YAOO@Z(double) std__XLgamma_double @ cdecl ?_Xbad_alloc@std@@YAXXZ() _Xmem @ stub ?_Xbad_function_call@std@@YAXXZ @ cdecl -arch=win32 ?_Xinvalid_argument@std@@YAXPBD@Z(str) _Xinvalid_argument diff --git a/dlls/msvcp120/msvcp120.spec b/dlls/msvcp120/msvcp120.spec index e131d41ecc..6308c57b29 100644 --- a/dlls/msvcp120/msvcp120.spec +++ b/dlls/msvcp120/msvcp120.spec @@ -1790,9 +1790,9 @@ @ stub -arch=win64 ?_W_Gettnames@_Locinfo@std@@QEBA?AV_Timevec@2@XZ @ stub -arch=win32 ?_Winerror_map@std@@YAPBDH@Z @ stub -arch=win64 ?_Winerror_map@std@@YAPEBDH@Z -@ stub ?_XLgamma@std@@YAMM@Z -@ stub ?_XLgamma@std@@YANN@Z -@ stub ?_XLgamma@std@@YAOO@Z +@ cdecl ?_XLgamma@std@@YAMM@Z(float) std__XLgamma_float +@ cdecl ?_XLgamma@std@@YANN@Z(double) std__XLgamma_double +@ cdecl ?_XLgamma@std@@YAOO@Z(double) std__XLgamma_double @ cdecl ?_Xbad_alloc@std@@YAXXZ() _Xmem @ stub ?_Xbad_function_call@std@@YAXXZ @ cdecl -arch=win32 ?_Xinvalid_argument@std@@YAXPBD@Z(str) _Xinvalid_argument diff --git a/dlls/msvcp120_app/msvcp120_app.spec b/dlls/msvcp120_app/msvcp120_app.spec index a76149071c..a44c89fdc8 100644 --- a/dlls/msvcp120_app/msvcp120_app.spec +++ b/dlls/msvcp120_app/msvcp120_app.spec @@ -1790,9 +1790,9 @@ @ stub -arch=win64 ?_W_Gettnames@_Locinfo@std@@QEBA?AV_Timevec@2@XZ @ stub -arch=win32 ?_Winerror_map@std@@YAPBDH@Z @ stub -arch=win64 ?_Winerror_map@std@@YAPEBDH@Z -@ stub ?_XLgamma@std@@YAMM@Z -@ stub ?_XLgamma@std@@YANN@Z -@ stub ?_XLgamma@std@@YAOO@Z +@ cdecl ?_XLgamma@std@@YAMM@Z(float) msvcp120.?_XLgamma@std@@YAMM@Z +@ cdecl ?_XLgamma@std@@YANN@Z(double) msvcp120.?_XLgamma@std@@YANN@Z +@ cdecl ?_XLgamma@std@@YAOO@Z(double) msvcp120.?_XLgamma@std@@YAOO@Z @ cdecl ?_Xbad_alloc@std@@YAXXZ() msvcp120.?_Xbad_alloc@std@@YAXXZ @ stub ?_Xbad_function_call@std@@YAXXZ @ cdecl -arch=win32 ?_Xinvalid_argument@std@@YAXPBD@Z(str) msvcp120.?_Xinvalid_argument@std@@YAXPBD@Z diff --git a/dlls/msvcp140/msvcp140.spec b/dlls/msvcp140/msvcp140.spec index 70caad8dba..2563c7bfa7 100644 --- a/dlls/msvcp140/msvcp140.spec +++ b/dlls/msvcp140/msvcp140.spec @@ -1673,9 +1673,9 @@ @ cdecl -arch=win32 ?_Winerror_message@std@@YAKKPADK@Z(long ptr long) _Winerror_message @ cdecl -arch=win64 ?_Winerror_message@std@@YAKKPEADK@Z(long ptr long) _Winerror_message @ stub ?_XGetLastError@std@@YAXXZ -@ stub ?_XLgamma@std@@YAMM@Z -@ stub ?_XLgamma@std@@YANN@Z -@ stub ?_XLgamma@std@@YAOO@Z +@ cdecl ?_XLgamma@std@@YAMM@Z(float) std__XLgamma_float +@ cdecl ?_XLgamma@std@@YANN@Z(double) std__XLgamma_double +@ cdecl ?_XLgamma@std@@YAOO@Z(double) std__XLgamma_double @ cdecl ?_Xbad_alloc@std@@YAXXZ() _Xmem @ stub ?_Xbad_function_call@std@@YAXXZ @ cdecl -arch=win32 ?_Xinvalid_argument@std@@YAXPBD@Z(str) _Xinvalid_argument diff --git a/dlls/msvcp90/math.c b/dlls/msvcp90/math.c index 9bc7c0867d..4ebf8baaee 100644 --- a/dlls/msvcp90/math.c +++ b/dlls/msvcp90/math.c @@ -2362,3 +2362,36 @@ short __cdecl _FExp(float *x, float y, short scale) return dclass(*x); } + +/* ?_XLgamma@std@@YANN@Z */ +double __cdecl std__XLgamma_double(double z) +{ + /* Lanczos coefficients g=5, n=6 */ + static const double lc[] = { + 1.000000000190015, + 76.18009172947146, + -86.50532032941677, + 24.01409824083091, + -1.231739572450155, + 0.1208650973866179e-2, + -0.5395239384953e-5 + }; + static const double log_sqrt_2pi = 0.91893853320467274178; + + double base = z + 4.5, sum = 0; + int i; + + if (z < 0.5) return log(M_PI / sin(M_PI * z)) - std__XLgamma_double(1 - z); + + z--; + for(i = ARRAY_SIZE(lc) - 1; i >= 1; i--) + sum += lc[i] / (z + i); + sum += lc[0]; + return log_sqrt_2pi + log(sum) - base + log(base) * (z + 0.5); +} + +/* ?_XLgamma@tr1@std@@YAMM@Z */ +float __cdecl std__XLgamma_float(float z) +{ + return std__XLgamma_double(z); +} diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec index 6a5a9a20a4..c38dd041af 100644 --- a/dlls/msvcp90/msvcp90.spec +++ b/dlls/msvcp90/msvcp90.spec @@ -3185,9 +3185,9 @@ @ cdecl -arch=win64 ?_Widen_s@?$ctype@G@std@@QEBAPEBDPEBD0PEAG_K@Z(ptr ptr ptr ptr long) ctype_wchar__Widen_s @ thiscall -arch=win32 ?_Widen_s@?$ctype@_W@std@@QBEPBDPBD0PA_WI@Z(ptr ptr ptr ptr long) ctype_wchar__Widen_s @ cdecl -arch=win64 ?_Widen_s@?$ctype@_W@std@@QEBAPEBDPEBD0PEA_W_K@Z(ptr ptr ptr ptr long) ctype_wchar__Widen_s -@ stub ?_XLgamma@tr1@std@@YAMM@Z -@ stub ?_XLgamma@tr1@std@@YANN@Z -@ stub ?_XLgamma@tr1@std@@YAOO@Z +@ cdecl ?_XLgamma@tr1@std@@YAMM@Z(float) std__XLgamma_float +@ cdecl ?_XLgamma@tr1@std@@YANN@Z(double) std__XLgamma_double +@ cdecl ?_XLgamma@tr1@std@@YAOO@Z(double) std__XLgamma_double @ stub ?_Xbad@tr1@std@@YAXW4error_type@regex_constants@12@@Z @ stub -arch=win32 ?_Xfsopen@std@@YAPAU_iobuf@@PB_W0H@Z @ stub -arch=win64 ?_Xfsopen@std@@YAPEAU_iobuf@@PEB_W0H@Z
1
0
0
0
← Newer
1
...
50
51
52
53
54
55
56
...
70
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Results per page:
10
25
50
100
200