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
May 2008
----- 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
4 participants
722 discussions
Start a n
N
ew thread
H. Verbeet : d3d: Use an alpha capable backbuffer format in the visual tests.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: 14b13d0687ef7474df88cda94266e32f7d0d97dd URL:
http://source.winehq.org/git/wine.git/?a=commit;h=14b13d0687ef7474df88cda94…
Author: H. Verbeet <hverbeet(a)gmail.com> Date: Sat May 24 10:33:20 2008 +0200 d3d: Use an alpha capable backbuffer format in the visual tests. --- dlls/d3d8/tests/visual.c | 25 ++++++++----------------- dlls/d3d9/tests/visual.c | 25 ++++++++----------------- 2 files changed, 16 insertions(+), 34 deletions(-) diff --git a/dlls/d3d8/tests/visual.c b/dlls/d3d8/tests/visual.c index 4a9100f..e34769c 100644 --- a/dlls/d3d8/tests/visual.c +++ b/dlls/d3d8/tests/visual.c @@ -115,7 +115,7 @@ static IDirect3DDevice8 *init_d3d8(void) present_parameters.SwapEffect = D3DSWAPEFFECT_DISCARD; present_parameters.BackBufferWidth = 640; present_parameters.BackBufferHeight = 480; - present_parameters.BackBufferFormat = D3DFMT_X8R8G8B8; + present_parameters.BackBufferFormat = D3DFMT_A8R8G8B8; present_parameters.EnableAutoDepthStencil = TRUE; present_parameters.AutoDepthStencilFormat = D3DFMT_D16; @@ -761,7 +761,7 @@ static void alpha_test(IDirect3DDevice8 *device) hr = IDirect3DDevice8_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0x80ff0000, 0.0, 0); ok(hr == D3D_OK, "Clear failed, hr = %08x\n", hr); - hr = IDirect3DDevice8_CreateTexture(device, 128, 128, 1, D3DUSAGE_RENDERTARGET, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &offscreenTexture); + hr = IDirect3DDevice8_CreateTexture(device, 128, 128, 1, D3DUSAGE_RENDERTARGET, D3DFMT_X8R8G8B8, D3DPOOL_DEFAULT, &offscreenTexture); ok(hr == D3D_OK || D3DERR_INVALIDCALL, "Creating the offscreen render target failed, hr = %#08x\n", hr); hr = IDirect3DDevice8_GetDepthStencilSurface(device, &depthstencil); @@ -796,13 +796,7 @@ static void alpha_test(IDirect3DDevice8 *device) ok(hr == D3D_OK, "IDirect3DDevice8_SetRenderState failed, hr = %08x\n", hr); if(IDirect3DDevice8_BeginScene(device) == D3D_OK) { - /* Draw two quads, one with src alpha blending, one with dest alpha blending. The - * SRCALPHA / INVSRCALPHA blend doesn't give any surprises. Colors are blended based on - * the input alpha - * - * The DESTALPHA / INVDESTALPHA do not "work" on the regular buffer because there is no alpha. - * They give essentially ZERO and ONE blend factors - */ + /* Draw two quads, one with src alpha blending, one with dest alpha blending. */ hr = IDirect3DDevice8_SetRenderState(device, D3DRS_SRCBLEND, D3DBLEND_SRCALPHA); ok(hr == D3D_OK, "IDirect3DDevice8_SetRenderState failed, hr = %08x\n", hr); hr = IDirect3DDevice8_SetRenderState(device, D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA); @@ -817,12 +811,9 @@ static void alpha_test(IDirect3DDevice8 *device) hr = IDirect3DDevice8_DrawPrimitiveUP(device, D3DPT_TRIANGLESTRIP, 2, quad2, sizeof(quad2[0])); ok(hr == D3D_OK, "DrawPrimitiveUP failed, hr = %#08x\n", hr); - /* Switch to the offscreen buffer, and redo the testing. SRCALPHA and DESTALPHA. The offscreen buffer - * has a alpha channel on its own. Clear the offscreen buffer with alpha = 0.5 again, then draw the - * quads again. The SRCALPHA/INVSRCALPHA doesn't give any surprises, but the DESTALPHA/INVDESTALPHA - * blending works as supposed now - blend factor is 0.5 in both cases, not 0.75 as from the input - * vertices - */ + /* Switch to the offscreen buffer, and redo the testing. The offscreen render target + * doesn't have an alpha channel. DESTALPHA and INVDESTALPHA "don't work" on render + * targets without alpha channel, they give essentially ZERO and ONE blend factors. */ hr = IDirect3DDevice8_SetRenderTarget(device, offscreen, 0); ok(hr == D3D_OK, "Can't get back buffer, hr = %08x\n", hr); hr = IDirect3DDevice8_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0x80ff0000, 0.0, 0); @@ -877,7 +868,7 @@ static void alpha_test(IDirect3DDevice8 *device) red = (color & 0x00ff0000) >> 16; green = (color & 0x0000ff00) >> 8; blue = (color & 0x000000ff); - ok(red == 0x00 && green == 0x00 && blue >= 0xfe && blue <= 0xff , + ok(red >= 0x7e && red <= 0x81 && green == 0x00 && blue >= 0x7e && blue <= 0x81, "DSTALPHA on frame buffer returned color %08x, expected 0x00ff0000\n", color); color = getPixelColor(device, 480, 360); @@ -891,7 +882,7 @@ static void alpha_test(IDirect3DDevice8 *device) red = (color & 0x00ff0000) >> 16; green = (color & 0x0000ff00) >> 8; blue = (color & 0x000000ff); - ok(red >= 0x7e && red <= 0x81 && green == 0x00 && blue >= 0x7e && blue <= 0x81, + ok(red == 0x00 && green == 0x00 && blue >= 0xfe && blue <= 0xff , "DSTALPHA on texture returned color %08x, expected foo\n", color); out: diff --git a/dlls/d3d9/tests/visual.c b/dlls/d3d9/tests/visual.c index d7db4a3..836eb98 100644 --- a/dlls/d3d9/tests/visual.c +++ b/dlls/d3d9/tests/visual.c @@ -159,7 +159,7 @@ static IDirect3DDevice9 *init_d3d9(void) present_parameters.SwapEffect = D3DSWAPEFFECT_DISCARD; present_parameters.BackBufferWidth = 640; present_parameters.BackBufferHeight = 480; - present_parameters.BackBufferFormat = D3DFMT_X8R8G8B8; + present_parameters.BackBufferFormat = D3DFMT_A8R8G8B8; present_parameters.EnableAutoDepthStencil = TRUE; present_parameters.AutoDepthStencilFormat = D3DFMT_D24S8; @@ -6671,7 +6671,7 @@ static void alpha_test(IDirect3DDevice9 *device) hr = IDirect3DDevice9_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0x80ff0000, 0.0, 0); ok(hr == D3D_OK, "Clear failed, hr = %08x\n", hr); - hr = IDirect3DDevice9_CreateTexture(device, 128, 128, 1, D3DUSAGE_RENDERTARGET, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &offscreenTexture, NULL); + hr = IDirect3DDevice9_CreateTexture(device, 128, 128, 1, D3DUSAGE_RENDERTARGET, D3DFMT_X8R8G8B8, D3DPOOL_DEFAULT, &offscreenTexture, NULL); ok(hr == D3D_OK || hr == D3DERR_INVALIDCALL, "Creating the offscreen render target failed, hr = %#08x\n", hr); hr = IDirect3DDevice9_GetBackBuffer(device, 0, 0, D3DBACKBUFFER_TYPE_MONO, &backbuffer); @@ -6704,13 +6704,7 @@ static void alpha_test(IDirect3DDevice9 *device) ok(hr == D3D_OK, "IDirect3DDevice9_SetRenderState failed, hr = %08x\n", hr); if(IDirect3DDevice9_BeginScene(device) == D3D_OK) { - /* Draw two quads, one with src alpha blending, one with dest alpha blending. The - * SRCALPHA / INVSRCALPHA blend doesn't give any surprises. Colors are blended based on - * the input alpha - * - * The DESTALPHA / INVDESTALPHA do not "work" on the regular buffer because there is no alpha. - * They give essentially ZERO and ONE blend factors - */ + /* Draw two quads, one with src alpha blending, one with dest alpha blending. */ hr = IDirect3DDevice9_SetRenderState(device, D3DRS_SRCBLEND, D3DBLEND_SRCALPHA); ok(hr == D3D_OK, "IDirect3DDevice9_SetRenderState failed, hr = %08x\n", hr); hr = IDirect3DDevice9_SetRenderState(device, D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA); @@ -6725,12 +6719,9 @@ static void alpha_test(IDirect3DDevice9 *device) hr = IDirect3DDevice9_DrawPrimitiveUP(device, D3DPT_TRIANGLESTRIP, 2, quad2, sizeof(quad2[0])); ok(hr == D3D_OK, "DrawPrimitiveUP failed, hr = %#08x\n", hr); - /* Switch to the offscreen buffer, and redo the testing. SRCALPHA and DESTALPHA. The offscreen buffer - * has a alpha channel on its own. Clear the offscreen buffer with alpha = 0.5 again, then draw the - * quads again. The SRCALPHA/INVSRCALPHA doesn't give any surprises, but the DESTALPHA/INVDESTALPHA - * blending works as supposed now - blend factor is 0.5 in both cases, not 0.75 as from the input - * vertices - */ + /* Switch to the offscreen buffer, and redo the testing. The offscreen render target + * doesn't have an alpha channel. DESTALPHA and INVDESTALPHA "don't work" on render + * targets without alpha channel, they give essentially ZERO and ONE blend factors. */ hr = IDirect3DDevice9_SetRenderTarget(device, 0, offscreen); ok(hr == D3D_OK, "Can't get back buffer, hr = %08x\n", hr); hr = IDirect3DDevice9_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0x80ff0000, 0.0, 0); @@ -6785,7 +6776,7 @@ static void alpha_test(IDirect3DDevice9 *device) red = (color & 0x00ff0000) >> 16; green = (color & 0x0000ff00) >> 8; blue = (color & 0x000000ff); - ok(red == 0x00 && green == 0x00 && blue >= 0xfe && blue <= 0xff , + ok(red >= 0x7e && red <= 0x81 && green == 0x00 && blue >= 0x7e && blue <= 0x81, "DSTALPHA on frame buffer returned color %08x, expected 0x00ff0000\n", color); color = getPixelColor(device, 480, 360); @@ -6799,7 +6790,7 @@ static void alpha_test(IDirect3DDevice9 *device) red = (color & 0x00ff0000) >> 16; green = (color & 0x0000ff00) >> 8; blue = (color & 0x000000ff); - ok(red >= 0x7e && red <= 0x81 && green == 0x00 && blue >= 0x7e && blue <= 0x81, + ok(red == 0x00 && green == 0x00 && blue >= 0xfe && blue <= 0xff , "DSTALPHA on texture returned color %08x, expected 0x00800080\n", color); out:
1
0
0
0
Detlef Riekenberg : avifil32: Resize the dialog to avoid truncated texts.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: 43fb6f771f0556695213c847aa4a777d1984d50b URL:
http://source.winehq.org/git/wine.git/?a=commit;h=43fb6f771f0556695213c847a…
Author: Detlef Riekenberg <wine.dev(a)web.de> Date: Fri May 23 23:46:02 2008 +0200 avifil32: Resize the dialog to avoid truncated texts. --- dlls/avifil32/avifile_Cs.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Da.rc | 18 ++++++++-------- dlls/avifil32/avifile_De.rc | 22 ++++++++++---------- dlls/avifil32/avifile_En.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Es.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Fr.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Hu.rc | 22 ++++++++++---------- dlls/avifil32/avifile_It.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Ja.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Ko.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Nl.rc | 22 ++++++++++---------- dlls/avifil32/avifile_No.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Pl.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Pt.rc | 44 +++++++++++++++++++++--------------------- dlls/avifil32/avifile_Ru.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Si.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Sv.rc | 22 ++++++++++---------- dlls/avifil32/avifile_Tr.rc | 22 ++++++++++---------- 18 files changed, 207 insertions(+), 207 deletions(-) Diff:
http://source.winehq.org/git/wine.git/?a=commitdiff;h=43fb6f771f0556695213c…
1
0
0
0
Eric Pouech : winedbg: Fixed the print_basic command when dealing with long long values.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: f7f9c08fc017640e8738be8cae854e00fef8257f URL:
http://source.winehq.org/git/wine.git/?a=commit;h=f7f9c08fc017640e8738be8ca…
Author: Eric Pouech <eric.pouech(a)orange.fr> Date: Fri May 23 20:05:01 2008 +0200 winedbg: Fixed the print_basic command when dealing with long long values. --- programs/winedbg/debugger.h | 2 +- programs/winedbg/memory.c | 12 +++++++++--- programs/winedbg/types.c | 8 +++++--- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/programs/winedbg/debugger.h b/programs/winedbg/debugger.h index d11e291..3fb650d 100644 --- a/programs/winedbg/debugger.h +++ b/programs/winedbg/debugger.h @@ -417,7 +417,7 @@ extern void print_value(const struct dbg_lvalue* addr, char format, extern int types_print_type(const struct dbg_type*, BOOL details); extern int print_types(void); extern long int types_extract_as_integer(const struct dbg_lvalue*); -extern LONGLONG types_extract_as_longlong(const struct dbg_lvalue*); +extern LONGLONG types_extract_as_longlong(const struct dbg_lvalue*, unsigned* psize); extern void types_extract_as_address(const struct dbg_lvalue*, ADDRESS64*); extern BOOL types_deref(const struct dbg_lvalue* value, struct dbg_lvalue* result); extern BOOL types_udt_find_element(struct dbg_lvalue* value, const char* name, long int* tmpbuf); diff --git a/programs/winedbg/memory.c b/programs/winedbg/memory.c index 70ca4ca..3d7a15b 100644 --- a/programs/winedbg/memory.c +++ b/programs/winedbg/memory.c @@ -474,14 +474,20 @@ void print_basic(const struct dbg_lvalue* lvalue, char format) if (format != 0) { - LONGLONG res = types_extract_as_longlong(lvalue); + unsigned size; + LONGLONG res = types_extract_as_longlong(lvalue, &size); + DWORD hi; WCHAR wch; /* FIXME: this implies i386 byte ordering */ switch (format) { case 'x': - dbg_printf("0x%x", (DWORD)(ULONG64)res); + hi = (ULONG64)res >> 32; + if (size == 8 && hi) + dbg_printf("0x%x%08x", hi, (DWORD)res); + else + dbg_printf("0x%x", (DWORD)res); return; case 'd': @@ -509,7 +515,7 @@ void print_basic(const struct dbg_lvalue* lvalue, char format) } if (lvalue->type.id == dbg_itype_segptr) { - dbg_print_longlong(types_extract_as_longlong(lvalue), TRUE); + dbg_print_longlong(types_extract_as_longlong(lvalue, NULL), TRUE); dbg_printf("\n"); } else print_typed_basic(lvalue); diff --git a/programs/winedbg/types.c b/programs/winedbg/types.c index a5700fb..fd13dac 100644 --- a/programs/winedbg/types.c +++ b/programs/winedbg/types.c @@ -53,7 +53,7 @@ BOOL types_get_real_type(struct dbg_type* type, DWORD* tag) * Given a lvalue, try to get an integral (or pointer/address) value * out of it */ -LONGLONG types_extract_as_longlong(const struct dbg_lvalue* lvalue) +LONGLONG types_extract_as_longlong(const struct dbg_lvalue* lvalue, unsigned* psize) { LONGLONG rtn; DWORD tag, bt; @@ -68,6 +68,7 @@ LONGLONG types_extract_as_longlong(const struct dbg_lvalue* lvalue) return (long int)memory_to_linear_addr(&lvalue->addr); } + if (psize) *psize = 0; switch (tag) { case SymTagBaseType: @@ -96,6 +97,7 @@ LONGLONG types_extract_as_longlong(const struct dbg_lvalue* lvalue) case btFloat: RaiseException(DEBUG_STATUS_NOT_AN_INTEGER, 0, 0, NULL); } + if (psize) *psize = (unsigned)size; break; case SymTagPointerType: if (!be_cpu->fetch_integer(lvalue, sizeof(void*), FALSE, &rtn)) @@ -131,7 +133,7 @@ LONGLONG types_extract_as_longlong(const struct dbg_lvalue* lvalue) */ long int types_extract_as_integer(const struct dbg_lvalue* lvalue) { - return types_extract_as_longlong(lvalue); + return types_extract_as_longlong(lvalue, NULL); } /****************************************************************** @@ -148,7 +150,7 @@ void types_extract_as_address(const struct dbg_lvalue* lvalue, ADDRESS64* addr) else { addr->Mode = AddrModeFlat; - addr->Offset = types_extract_as_longlong( lvalue ); + addr->Offset = types_extract_as_longlong(lvalue, NULL); } }
1
0
0
0
Eric Pouech : winedbg: Removed unneeded variable from print_basic.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: 98e248682055778646e06f2c29d33c60e4d35291 URL:
http://source.winehq.org/git/wine.git/?a=commit;h=98e248682055778646e06f2c2…
Author: Eric Pouech <eric.pouech(a)orange.fr> Date: Fri May 23 20:04:55 2008 +0200 winedbg: Removed unneeded variable from print_basic. --- programs/winedbg/debugger.h | 2 +- programs/winedbg/memory.c | 2 +- programs/winedbg/types.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/programs/winedbg/debugger.h b/programs/winedbg/debugger.h index f95c3d1..d11e291 100644 --- a/programs/winedbg/debugger.h +++ b/programs/winedbg/debugger.h @@ -367,7 +367,7 @@ extern BOOL memory_disasm_one_insn(ADDRESS64* addr); extern char* memory_offset_to_string(char *str, DWORD64 offset, unsigned mode); extern void print_bare_address(const ADDRESS64* addr); extern void print_address(const ADDRESS64* addr, BOOLEAN with_line); -extern void print_basic(const struct dbg_lvalue* value, int count, char format); +extern void print_basic(const struct dbg_lvalue* value, char format); /* source.c */ extern void source_list(IMAGEHLP_LINE* src1, IMAGEHLP_LINE* src2, int delta); diff --git a/programs/winedbg/memory.c b/programs/winedbg/memory.c index 50fe3df..70ca4ca 100644 --- a/programs/winedbg/memory.c +++ b/programs/winedbg/memory.c @@ -464,7 +464,7 @@ static void print_typed_basic(const struct dbg_lvalue* lvalue) * * Implementation of the 'print' command. */ -void print_basic(const struct dbg_lvalue* lvalue, int count, char format) +void print_basic(const struct dbg_lvalue* lvalue, char format) { if (lvalue->type.id == dbg_itype_none) { diff --git a/programs/winedbg/types.c b/programs/winedbg/types.c index 06b7355..a5700fb 100644 --- a/programs/winedbg/types.c +++ b/programs/winedbg/types.c @@ -457,7 +457,7 @@ void print_value(const struct dbg_lvalue* lvalue, char format, int level) /* FIXME: this in not 100% optimal (as we're going through the typedef handling * stuff again */ - print_basic(lvalue, 1, format); + print_basic(lvalue, format); break; case SymTagUDT: if (types_get_info(&type, TI_GET_CHILDRENCOUNT, &count))
1
0
0
0
Eric Pouech : msvcrt: Properly handle the extended keys in getch().
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: ac2053ba1005946baf5a1e2f823ec2bdc0a468ae URL:
http://source.winehq.org/git/wine.git/?a=commit;h=ac2053ba1005946baf5a1e2f8…
Author: Eric Pouech <eric.pouech(a)orange.fr> Date: Fri May 23 20:04:36 2008 +0200 msvcrt: Properly handle the extended keys in getch(). --- dlls/msvcrt/console.c | 52 +++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 48 insertions(+), 4 deletions(-) diff --git a/dlls/msvcrt/console.c b/dlls/msvcrt/console.c index 1e65832..c0549d2 100644 --- a/dlls/msvcrt/console.c +++ b/dlls/msvcrt/console.c @@ -77,6 +77,24 @@ int CDECL _cputs(const char* str) return retval; } +#define NORMAL_CHAR 0 +#define ALT_CHAR 1 +#define CTRL_CHAR 2 +#define SHIFT_CHAR 3 + +static struct {unsigned vk; unsigned ch[4][2];} enh_map[] = { + {0x47, {{0xE0, 0x47}, {0x00, 0x97}, {0xE0, 0x77}, {0xE0, 0x47}}}, + {0x48, {{0xE0, 0x48}, {0x00, 0x98}, {0xE0, 0x8D}, {0xE0, 0x48}}}, + {0x49, {{0xE0, 0x49}, {0x00, 0x99}, {0xE0, 0x86}, {0xE0, 0x49}}}, + {0x4B, {{0xE0, 0x4B}, {0x00, 0x9B}, {0xE0, 0x73}, {0xE0, 0x4B}}}, + {0x4D, {{0xE0, 0x4D}, {0x00, 0x9D}, {0xE0, 0x74}, {0xE0, 0x4D}}}, + {0x4F, {{0xE0, 0x4F}, {0x00, 0x9F}, {0xE0, 0x75}, {0xE0, 0x4F}}}, + {0x50, {{0xE0, 0x50}, {0x00, 0xA0}, {0xE0, 0x91}, {0xE0, 0x50}}}, + {0x51, {{0xE0, 0x51}, {0x00, 0xA1}, {0xE0, 0x76}, {0xE0, 0x51}}}, + {0x52, {{0xE0, 0x52}, {0x00, 0xA2}, {0xE0, 0x92}, {0xE0, 0x52}}}, + {0x53, {{0xE0, 0x53}, {0x00, 0xA3}, {0xE0, 0x93}, {0xE0, 0x53}}}, +}; + /********************************************************************* * _getch (MSVCRT.@) */ @@ -103,13 +121,39 @@ int CDECL _getch(void) do { if (ReadConsoleInputA(MSVCRT_console_in, &ir, 1, &count)) { + int i; /* Only interested in ASCII chars */ if (ir.EventType == KEY_EVENT && - ir.Event.KeyEvent.bKeyDown && - ir.Event.KeyEvent.uChar.AsciiChar) + ir.Event.KeyEvent.bKeyDown) { - retval = ir.Event.KeyEvent.uChar.AsciiChar; - break; + if (ir.Event.KeyEvent.uChar.AsciiChar) + { + retval = ir.Event.KeyEvent.uChar.AsciiChar; + break; + } + for (i = 0; i < sizeof(enh_map) / sizeof(enh_map[0]); i++) + { + if (ir.Event.KeyEvent.wVirtualScanCode == enh_map[i].vk) break; + } + if (i < sizeof(enh_map) / sizeof(enh_map[0])) + { + unsigned idx; + + if (ir.Event.KeyEvent.wVirtualScanCode & (LEFT_ALT_PRESSED | RIGHT_ALT_PRESSED)) + idx = ALT_CHAR; + else if (ir.Event.KeyEvent.wVirtualScanCode & (LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED) ) + idx = CTRL_CHAR; + else if (ir.Event.KeyEvent.wVirtualScanCode & SHIFT_PRESSED) + idx = SHIFT_CHAR; + else + idx = NORMAL_CHAR; + + retval = enh_map[i].ch[idx][0]; + __MSVCRT_console_buffer = enh_map[i].ch[idx][1]; + break; + } + WARN("Unmapped char keyState=%x vk=%x\n", + ir.Event.KeyEvent.dwControlKeyState, ir.Event.KeyEvent.wVirtualScanCode); } } else
1
0
0
0
Alexandre Julliard : winetest: Don't submit test results if we don' t have a valid git build id.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: 9f74bf1eb27a911c6400b53ef7d341fd71a3b7ae URL:
http://source.winehq.org/git/wine.git/?a=commit;h=9f74bf1eb27a911c6400b53ef…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Tue May 27 11:48:50 2008 +0200 winetest: Don't submit test results if we don't have a valid git build id. --- programs/winetest/main.c | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-) diff --git a/programs/winetest/main.c b/programs/winetest/main.c index b83d03c..7d61da5 100644 --- a/programs/winetest/main.c +++ b/programs/winetest/main.c @@ -54,6 +54,7 @@ static struct wine_test *wine_tests; static int nr_of_files, nr_of_tests; static const char whitespace[] = " \t\r\n"; static const char testexe[] = "_test.exe"; +static char build_id[64]; static char * get_file_version(char * file_name) { @@ -462,7 +463,6 @@ run_tests (char *logname) int logfile; char *strres, *eol, *nextline; DWORD strsize; - char build[64]; SetErrorMode (SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX); @@ -499,9 +499,7 @@ run_tests (char *logname) report (R_DIR, tempdir); xprintf ("Version 4\n"); - xprintf ("Tests from build "); - if (LoadStringA( 0, IDS_BUILD_ID, build, sizeof(build) )) xprintf( "%s\n", build ); - else xprintf ("-\n"); + xprintf ("Tests from build %s\n", build_id[0] ? build_id : "-" ); strres = extract_rcdata (MAKEINTRESOURCE(TESTS_URL), STRINGRES, &strsize); xprintf ("Archive: "); if (strres) xprintf ("%.*s", strsize, strres); @@ -593,6 +591,8 @@ int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, int poweroff = 0; int interactive = 1; + if (!LoadStringA( 0, IDS_BUILD_ID, build_id, sizeof(build_id) )) build_id[0] = 0; + cmdLine = strtok (cmdLine, whitespace); while (cmdLine) { if (cmdLine[0] != '-' || cmdLine[2]) { @@ -676,10 +676,14 @@ int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, } report (R_TAG); + if (!build_id[0]) + report( R_WARNING, "You won't be able to submit results without a valid build id.\n" + "To submit results, winetest needs to be built from a git checkout." ); + if (!logname) { logname = run_tests (NULL); - if (report (R_ASK, MB_YESNO, "Do you want to submit the " - "test results?") == IDYES) + if (build_id[0] && + report (R_ASK, MB_YESNO, "Do you want to submit the test results?") == IDYES) if (!send_file (logname) && remove (logname)) report (R_WARNING, "Can't remove logfile: %d.", errno); free (logname);
1
0
0
0
Alexandre Julliard : winetest: Remove the per-file revision info, we now use the global commit id.
by Alexandre Julliard
27 May '08
27 May '08
Module: wine Branch: master Commit: 808f5c8dedc4793aa96419b5d95b54ed3f725505 URL:
http://source.winehq.org/git/wine.git/?a=commit;h=808f5c8dedc4793aa96419b5d…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Tue May 27 11:32:34 2008 +0200 winetest: Remove the per-file revision info, we now use the global commit id. --- programs/winetest/Makefile.in | 7 +---- programs/winetest/dist.rc | 4 --- programs/winetest/main.c | 52 +---------------------------------------- programs/winetest/maketest | 25 ------------------- programs/winetest/resource.h | 4 --- 5 files changed, 3 insertions(+), 89 deletions(-) diff --git a/programs/winetest/Makefile.in b/programs/winetest/Makefile.in index 03c5dae..e7c6fb6 100644 --- a/programs/winetest/Makefile.in +++ b/programs/winetest/Makefile.in @@ -271,7 +271,7 @@ ws2_32_test.exe: $(DLLDIR)/ws2_32/tests/ws2_32_test.exe$(DLLEXT) winetest.res: $(TESTBINS) clean:: - $(RM) tests.rc dist.res winetest-dist winetest-dist.exe $(TESTBINS) + $(RM) dist.res winetest-dist winetest-dist.exe $(TESTBINS) # Rules for building distributable executable @@ -288,9 +288,6 @@ winetest-dist: $(WINEWRAPPER) winetest-dist.exe: $(OBJS) dist.res.o Makefile.in $(CC) $(APPMODE) $(OBJS) dist.res.o -o $@ $(DELAYIMPORTS:%=-l%) $(ALL_LIBS) -tests.rc: maketest Makefile.in - $(SRCDIR)/maketest $(TOPSRCDIR) > $@ || ($(RM) $@ && exit 1) - -dist.res: winetest.rc tests.rc build.id build.nfo tests.url winetest.ico $(TESTBINS) +dist.res: winetest.rc build.nfo tests.url winetest.ico $(TESTBINS) @DEPENDENCIES@ # everything below this line is overwritten by make depend diff --git a/programs/winetest/dist.rc b/programs/winetest/dist.rc index 111bf9c..e7080db 100644 --- a/programs/winetest/dist.rc +++ b/programs/winetest/dist.rc @@ -19,10 +19,6 @@ */ #include "winetest.rc" -#include "tests.rc" - -/* @makedep: build.id */ -WINE_BUILD STRINGRES "build.id" /* @makedep: build.nfo */ BUILD_INFO STRINGRES "build.nfo" diff --git a/programs/winetest/main.c b/programs/winetest/main.c index 90c4449..b83d03c 100644 --- a/programs/winetest/main.c +++ b/programs/winetest/main.c @@ -49,16 +49,9 @@ struct wine_test char *exename; }; -struct rev_info -{ - const char* file; - const char* rev; -}; - char *tag = NULL; static struct wine_test *wine_tests; static int nr_of_files, nr_of_tests; -static struct rev_info *rev_infos = NULL; static const char whitespace[] = " \t\r\n"; static const char testexe[] = "_test.exe"; @@ -219,43 +212,6 @@ static const char* get_test_source_file(const char* test, const char* subtest) return buffer; } -static const char* get_file_rev(const char* file) -{ - const struct rev_info* rev; - - for(rev = rev_infos; rev->file; rev++) { - if (strcmp(rev->file, file) == 0) return rev->rev; - } - - return "-"; -} - -static void extract_rev_infos (void) -{ - char revinfo[256], *p; - int size = 0, i; - unsigned int len; - HMODULE module = GetModuleHandle (NULL); - - for (i = 0; TRUE; i++) { - if (i >= size) { - size += 100; - rev_infos = xrealloc (rev_infos, size * sizeof (*rev_infos)); - } - memset(rev_infos + i, 0, sizeof(rev_infos[i])); - - len = LoadStringA (module, REV_INFO+i, revinfo, sizeof(revinfo)); - if (len == 0) break; /* end of revision info */ - if (len >= sizeof(revinfo) - 1) - report (R_FATAL, "Revision info too long."); - if(!(p = strrchr(revinfo, ':'))) - report (R_FATAL, "Revision info malformed (i=%d)", i); - *p = 0; - rev_infos[i].file = strdup(revinfo); - rev_infos[i].rev = strdup(p + 1); - } -} - static void* extract_rcdata (LPTSTR name, int type, DWORD* size) { HRSRC rsrc; @@ -454,10 +410,9 @@ run_test (struct wine_test* test, const char* subtest, const char *tempdir) { int status; const char* file = get_test_source_file(test->name, subtest); - const char* rev = get_file_rev(file); char *cmd = strmake (NULL, "%s %s", test->exename, subtest); - xprintf ("%s:%s start %s %s\n", test->name, subtest, file, rev); + xprintf ("%s:%s start %s -\n", test->name, subtest, file); status = run_ex (cmd, NULL, tempdir, 120000); free (cmd); xprintf ("%s:%s done (%d)\n", test->name, subtest, status); @@ -544,10 +499,8 @@ run_tests (char *logname) report (R_DIR, tempdir); xprintf ("Version 4\n"); - strres = extract_rcdata (MAKEINTRESOURCE(WINE_BUILD), STRINGRES, &strsize); xprintf ("Tests from build "); if (LoadStringA( 0, IDS_BUILD_ID, build, sizeof(build) )) xprintf( "%s\n", build ); - else if (strres) xprintf ("%.*s", strsize, strres); else xprintf ("-\n"); strres = extract_rcdata (MAKEINTRESOURCE(TESTS_URL), STRINGRES, &strsize); xprintf ("Archive: "); @@ -640,9 +593,6 @@ int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, int poweroff = 0; int interactive = 1; - /* initialize the revision information first */ - extract_rev_infos(); - cmdLine = strtok (cmdLine, whitespace); while (cmdLine) { if (cmdLine[0] != '-' || cmdLine[2]) { diff --git a/programs/winetest/maketest b/programs/winetest/maketest deleted file mode 100755 index ff4d88b..0000000 --- a/programs/winetest/maketest +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -TOPSRCDIR="$1" -shift - -echo "/* Automatically generated -- do not edit! */" -echo "STRINGTABLE {" - -i=0 -cd $TOPSRCDIR -if [ -d .git ] -then - git-ls-files -c -s --abbrev=10 -- "dlls/*/tests/*.c" |\ - sed -ne "s|^[0-7]* \([0-9a-f]*\) [0-9] \(.*\)$|\2:\1|p" -else - for dir in dlls/*/tests; do - sed -ne "s|^/\([^.]*.c\)/\([^/]*\).*|$dir/\1:\2|p" $dir/CVS/Entries 2>/dev/null - done -fi |\ -while read line; do - echo "REV_INFO+$i \"$line\"" - i=`expr $i + 1` -done - -echo "}" diff --git a/programs/winetest/resource.h b/programs/winetest/resource.h index a40c089..4b21491 100644 --- a/programs/winetest/resource.h +++ b/programs/winetest/resource.h @@ -51,9 +51,5 @@ /* String resources */ -#define WINE_BUILD 10000 #define BUILD_INFO 10001 #define TESTS_URL 10002 - -/* Revision info strings start from this index: */ -#define REV_INFO 30000
1
0
0
0
Paul Vriens : setupapi/tests: Test registry after testDeviceRegistryProperty.
by Alexandre Julliard
26 May '08
26 May '08
Module: wine Branch: master Commit: 156dad05c08cd921288aedf1b281ff23844a1692 URL:
http://source.winehq.org/git/wine.git/?a=commit;h=156dad05c08cd921288aedf1b…
Author: Paul Vriens <paul.vriens.wine(a)gmail.com> Date: Mon May 26 17:42:15 2008 +0200 setupapi/tests: Test registry after testDeviceRegistryProperty. --- dlls/setupapi/tests/devinst.c | 32 ++++++++++++++++++++++++++++++++ 1 files changed, 32 insertions(+), 0 deletions(-) diff --git a/dlls/setupapi/tests/devinst.c b/dlls/setupapi/tests/devinst.c index aacd8a5..07497d4 100644 --- a/dlls/setupapi/tests/devinst.c +++ b/dlls/setupapi/tests/devinst.c @@ -1046,6 +1046,10 @@ static void testDeviceRegistryPropertyA() DWORD size; DWORD regType; BOOL ret; + LONG res; + HKEY key; + static const CHAR bogus[] = + "System\\CurrentControlSet\\Enum\\Root\\LEGACY_BOGUS"; SetLastError(0xdeadbeef); set = pSetupDiGetClassDevsA(&guid, NULL, 0, DIGCF_DEVICEINTERFACE); @@ -1122,6 +1126,17 @@ static void testDeviceRegistryPropertyA() ok(!ret && GetLastError() == ERROR_INVALID_DATA, "Expected ERROR_INVALID_DATA, got %08x\n", GetLastError()); pSetupDiDestroyDeviceInfoList(set); + + res = RegOpenKeyA(HKEY_LOCAL_MACHINE, bogus, &key); + todo_wine + ok(res == ERROR_FILE_NOT_FOUND, "Expected key to not exist\n"); + /* FIXME: Remove when Wine is fixed */ + if (res == ERROR_SUCCESS) + { + /* Wine doesn't delete the information currently */ + trace("We are most likely on Wine\n"); + RegDeleteKeyA(HKEY_LOCAL_MACHINE, bogus); + } } static void testDeviceRegistryPropertyW() @@ -1135,6 +1150,12 @@ static void testDeviceRegistryPropertyW() DWORD size; DWORD regType; BOOL ret; + LONG res; + HKEY key; + static const WCHAR bogus[] = {'S','y','s','t','e','m','\\', + 'C','u','r','r','e','n','t','C','o','n','t','r','o','l','S','e','t','\\', + 'E','n','u','m','\\','R','o','o','t','\\', + 'L','E','G','A','C','Y','_','B','O','G','U','S',0}; SetLastError(0xdeadbeef); set = pSetupDiGetClassDevsW(&guid, NULL, 0, DIGCF_DEVICEINTERFACE); @@ -1216,6 +1237,17 @@ static void testDeviceRegistryPropertyW() ok(!ret && GetLastError() == ERROR_INVALID_DATA, "Expected ERROR_INVALID_DATA, got %08x\n", GetLastError()); pSetupDiDestroyDeviceInfoList(set); + + res = RegOpenKeyW(HKEY_LOCAL_MACHINE, bogus, &key); + todo_wine + ok(res == ERROR_FILE_NOT_FOUND, "Expected key to not exist\n"); + /* FIXME: Remove when Wine is fixed */ + if (res == ERROR_SUCCESS) + { + /* Wine doesn't delete the information currently */ + trace("We are most likely on Wine\n"); + RegDeleteKeyW(HKEY_LOCAL_MACHINE, bogus); + } } START_TEST(devinst)
1
0
0
0
Paul Vriens : setupapi/tests: Cleanup after testGetDeviceInterfaceDetail.
by Alexandre Julliard
26 May '08
26 May '08
Module: wine Branch: master Commit: 3573b90bdca11b25f0ec28a32e5cbf5a7cb78fb6 URL:
http://source.winehq.org/git/wine.git/?a=commit;h=3573b90bdca11b25f0ec28a32…
Author: Paul Vriens <paul.vriens.wine(a)gmail.com> Date: Mon May 26 17:25:42 2008 +0200 setupapi/tests: Cleanup after testGetDeviceInterfaceDetail. --- dlls/setupapi/tests/devinst.c | 33 +++++++++++++++++++++++++++++---- 1 files changed, 29 insertions(+), 4 deletions(-) diff --git a/dlls/setupapi/tests/devinst.c b/dlls/setupapi/tests/devinst.c index 1545455..aacd8a5 100644 --- a/dlls/setupapi/tests/devinst.c +++ b/dlls/setupapi/tests/devinst.c @@ -643,6 +643,16 @@ static void testGetDeviceInterfaceDetail(void) { BOOL ret; HDEVINFO set; + static const WCHAR bogus[] = {'S','y','s','t','e','m','\\', + 'C','u','r','r','e','n','t','C','o','n','t','r','o','l','S','e','t','\\', + 'E','n','u','m','\\','R','o','o','t','\\', + 'L','E','G','A','C','Y','_','B','O','G','U','S',0}; + static const WCHAR devclass[] = {'S','y','s','t','e','m','\\', + 'C','u','r','r','e','n','t','C','o','n','t','r','o','l','S','e','t','\\', + 'C','o','n','t','r','o','l','\\','D','e','v','i','c','e','C','l','a','s','s','e','s','\\', + '{','6','a','5','5','b','5','a','4','-','3','f','6','5','-', + '1','1','d','b','-','b','7','0','4','-', + '0','0','1','1','9','5','5','c','2','b','d','b','}',0}; if (!pSetupDiCreateDeviceInfoList || !pSetupDiDestroyDeviceInfoList || !pSetupDiCreateDeviceInfoA || !pSetupDiCreateDeviceInterfaceA || @@ -663,6 +673,7 @@ static void testGetDeviceInterfaceDetail(void) SP_DEVICE_INTERFACE_DATA interfaceData = { sizeof(interfaceData), { 0 } }; DWORD size = 0; + HKEY key; SetLastError(0xdeadbeef); ret = pSetupDiGetDeviceInterfaceDetailA(set, NULL, NULL, 0, NULL, @@ -741,6 +752,24 @@ static void testGetDeviceInterfaceDetail(void) HeapFree(GetProcessHeap(), 0, buf); } pSetupDiDestroyDeviceInfoList(set); + + /* Cleanup */ + /* FIXME: On Wine we still have the bogus entry in Enum\Root and + * subkeys, as well as the deviceclass key with subkeys. + * Only do the RegDeleteKey, once Wine is fixed. + */ + if (!RegOpenKeyW(HKEY_LOCAL_MACHINE, bogus, &key)) + { + /* Wine doesn't delete the information currently */ + trace("We are most likely on Wine\n"); + devinst_RegDeleteTreeW(HKEY_LOCAL_MACHINE, bogus); + devinst_RegDeleteTreeW(HKEY_LOCAL_MACHINE, devclass); + } + else + { + ok(!RegDeleteKeyW(HKEY_LOCAL_MACHINE, devclass), + "Couldn't delete deviceclass key\n"); + } } } @@ -791,10 +820,6 @@ static void testDevRegKey(void) /* The device info key shouldn't be there */ res = RegOpenKeyW(HKEY_LOCAL_MACHINE, bogus, &key); - /* Due to old winetests we could have leftovers and hence the - * todo_wine. - */ - todo_wine ok(res != ERROR_SUCCESS, "Expected key to not exist\n"); RegCloseKey(key); /* Create the device information */
1
0
0
0
Paul Vriens : setupapi/tests: Skip tests on win9x.
by Alexandre Julliard
26 May '08
26 May '08
Module: wine Branch: master Commit: 2b27d9baed8cd767ca12c71b7b044fd47b066527 URL:
http://source.winehq.org/git/wine.git/?a=commit;h=2b27d9baed8cd767ca12c71b7…
Author: Paul Vriens <paul.vriens.wine(a)gmail.com> Date: Mon May 26 12:13:07 2008 +0200 setupapi/tests: Skip tests on win9x. --- dlls/setupapi/tests/devinst.c | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletions(-) diff --git a/dlls/setupapi/tests/devinst.c b/dlls/setupapi/tests/devinst.c index 4b8dd5a..986d1ae 100644 --- a/dlls/setupapi/tests/devinst.c +++ b/dlls/setupapi/tests/devinst.c @@ -727,6 +727,7 @@ static void testDevRegKey(void) '0','0','1','1','9','5','5','c','2','b','d','b','}',0}; BOOL ret; HDEVINFO set; + HKEY key = NULL; if (!pSetupDiCreateDeviceInfoList || !pSetupDiDestroyDeviceInfoList || !pSetupDiCreateDeviceInfoA || !pSetupDiOpenDevRegKey || @@ -736,12 +737,25 @@ static void testDevRegKey(void) skip("No SetupDiOpenDevRegKey\n"); return; } + + /* Check if we are on win9x */ + SetLastError(0xdeadbeef); + key = pSetupDiCreateDevRegKeyW(NULL, NULL, 0, 0, 0, NULL, NULL); + if (key == INVALID_HANDLE_VALUE && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED) + { + skip("We are on win9x where the tests introduce issues\n"); + return; + } + ok(key == INVALID_HANDLE_VALUE, + "Expected INVALID_HANDLE_VALUE, got %p\n", key); + ok(GetLastError() == ERROR_INVALID_HANDLE, + "Expected ERROR_INVALID_HANDLE, got %08x\n", GetLastError()); + set = pSetupDiCreateDeviceInfoList(&guid, NULL); ok(set != NULL, "SetupDiCreateDeviceInfoList failed: %d\n", GetLastError()); if (set) { SP_DEVINFO_DATA devInfo = { sizeof(devInfo), { 0 } }; - HKEY key = INVALID_HANDLE_VALUE; ret = pSetupDiCreateDeviceInfoA(set, "ROOT\\LEGACY_BOGUS\\0000", &guid, NULL, NULL, 0, &devInfo);
1
0
0
0
← Newer
1
...
13
14
15
16
17
18
19
...
73
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
71
72
73
Results per page:
10
25
50
100
200