ReactOS.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
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
List overview
Download
Ros-diffs
March 2011
----- 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
ros-diffs@reactos.org
21 participants
276 discussions
Start a n
N
ew thread
[akhaldi] 51026: [DDK] Fix ioaccess.h svn properties. Spotted by Jonathan Yong.
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat Mar 12 15:50:58 2011 New Revision: 51026 URL:
http://svn.reactos.org/svn/reactos?rev=51026&view=rev
Log: [DDK] Fix ioaccess.h svn properties. Spotted by Jonathan Yong. Modified: trunk/reactos/include/ddk/ioaccess.h (props changed) Propchange: trunk/reactos/include/ddk/ioaccess.h ------------------------------------------------------------------------------ --- svn:executable (original) +++ svn:executable (removed) @@ -1,1 +1,0 @@ -* Propchange: trunk/reactos/include/ddk/ioaccess.h ------------------------------------------------------------------------------ --- svn:mime-type (original) +++ svn:mime-type (removed) @@ -1,1 +1,0 @@ -text/plain
13 years, 9 months
1
0
0
0
[pschweitzer] 51025: [NTOSKRNL] Revert r51017 that was reverting r51016. In fact, it seems that cmlib assert error, whatever that eats randomly doesn't come from software issue inside ReactOS, but ...
by pschweitzer@svn.reactos.org
Author: pschweitzer Date: Sat Mar 12 12:56:36 2011 New Revision: 51025 URL:
http://svn.reactos.org/svn/reactos?rev=51025&view=rev
Log: [NTOSKRNL] Revert r51017 that was reverting r51016. In fact, it seems that cmlib assert error, whatever that eats randomly doesn't come from software issue inside ReactOS, but from a build issue. Indeed, as you may see in the different tests I performed it shows that the same build produces the same failure, again and again. But, new build shows that there is no assert anylonger with that commit. Don't ask me why or how it happens, I just don't get it. But most of the time, it works, no one knows why ("as usual" (tm)). But it's cool. Someone from BE team and/or buildslaves managers should take a serious look at this issue. Just in case: if that commit re-hits cmlib assert, don't blame it immediatly, just commit something else, and see whether trunk is still broken. But, as you can see in testman, we have now test results for r51016 ;-) Modified: trunk/reactos/ntoskrnl/fstub/halstub.c trunk/reactos/ntoskrnl/include/internal/hal.h Modified: trunk/reactos/ntoskrnl/fstub/halstub.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fstub/halstub.c?r…
============================================================================== --- trunk/reactos/ntoskrnl/fstub/halstub.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/fstub/halstub.c [iso-8859-1] Sat Mar 12 12:56:36 2011 @@ -4,6 +4,7 @@ * FILE: ntoskrnl/fstub/halstub.c * PURPOSE: I/O Stub HAL Routines * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) + Pierre Schweitzer (pierre.schweitzer(a)reactos.org) */ /* INCLUDES ******************************************************************/ @@ -17,51 +18,51 @@ HAL_DISPATCH HalDispatchTable = { HAL_DISPATCH_VERSION, - (pHalQuerySystemInformation)NULL, - (pHalSetSystemInformation)NULL, - (pHalQueryBusSlots)NULL, + xHalQuerySystemInformation, + xHalSetSystemInformation, + xHalQueryBusSlots, 0, xHalExamineMBR, xHalIoAssignDriveLetters, xHalIoReadPartitionTable, xHalIoSetPartitionInformation, xHalIoWritePartitionTable, - (pHalHandlerForBus)NULL, - (pHalReferenceBusHandler)NULL, - (pHalReferenceBusHandler)NULL, - (pHalInitPnpDriver)NULL, - (pHalInitPowerManagement)NULL, + xHalHandlerForBus, + xHalReferenceHandler, + xHalReferenceHandler, + xHalInitPnpDriver, + xHalInitPowerManagement, (pHalGetDmaAdapter) NULL, xHalGetInterruptTranslator, - (pHalStartMirroring)NULL, - (pHalEndMirroring)NULL, - (pHalMirrorPhysicalMemory)NULL, + xHalStartMirroring, + xHalEndMirroring, + xHalMirrorPhysicalMemory, xHalEndOfBoot, - (pHalMirrorVerify)NULL + xHalMirrorPhysicalMemory }; HAL_PRIVATE_DISPATCH HalPrivateDispatchTable = { HAL_PRIVATE_DISPATCH_VERSION, - (pHalHandlerForBus)NULL, - (pHalHandlerForConfigSpace)NULL, - (pHalLocateHiberRanges)NULL, - (pHalRegisterBusHandler)NULL, + xHalHandlerForBus, + (pHalHandlerForConfigSpace)xHalHandlerForBus, + xHalLocateHiberRanges, + xHalRegisterBusHandler, xHalSetWakeEnable, - (pHalSetWakeAlarm)NULL, - (pHalTranslateBusAddress)NULL, - (pHalAssignSlotResources)NULL, + xHalSetWakeAlarm, + xHalTranslateBusAddress, + (pHalAssignSlotResources)xHalTranslateBusAddress, xHalHaltSystem, (pHalFindBusAddressTranslation)NULL, (pHalResetDisplay)NULL, - (pHalAllocateMapRegisters)NULL, - (pKdSetupPciDeviceForDebugging)NULL, - (pKdReleasePciDeviceForDebugging)NULL, - (pKdGetAcpiTablePhase0)NULL, - (pKdCheckPowerButton)NULL, - (pHalVectorToIDTEntry)xHalVectorToIDTEntry, - (pKdMapPhysicalMemory64)NULL, - (pKdUnmapVirtualAddress)NULL + xHalAllocateMapRegisters, + xKdSetupPciDeviceForDebugging, + xKdReleasePciDeviceForDebugging, + xKdGetAcpiTablePhase, + (pKdCheckPowerButton)xHalReferenceHandler, + xHalVectorToIDTEntry, + (pKdMapPhysicalMemory64)MatchAll, + (pKdUnmapVirtualAddress)xKdUnmapVirtualAddress }; /* FUNCTIONS *****************************************************************/ @@ -86,6 +87,8 @@ NTAPI xHalEndOfBoot(VOID) { + PAGED_CODE(); + /* Nothing */ return; } @@ -97,3 +100,193 @@ /* Nothing */ return; } + +PBUS_HANDLER +FASTCALL +xHalHandlerForBus(IN INTERFACE_TYPE InterfaceType, + IN ULONG BusNumber) +{ + return NULL; +} + +VOID +FASTCALL +xHalReferenceHandler(IN PBUS_HANDLER BusHandler) +{ + /* Nothing */ + return; +} + +NTSTATUS +NTAPI +xHalInitPnpDriver(VOID) +{ + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalInitPowerManagement(IN PPM_DISPATCH_TABLE PmDriverDispatchTable, + OUT PPM_DISPATCH_TABLE *PmHalDispatchTable) +{ + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalStartMirroring(VOID) +{ + PAGED_CODE(); + + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalEndMirroring(IN ULONG PassNumber) +{ + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalMirrorPhysicalMemory(IN PHYSICAL_ADDRESS PhysicalAddress, + IN LARGE_INTEGER NumberOfBytes) +{ + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalQueryBusSlots(IN PBUS_HANDLER BusHandler, + IN ULONG BufferSize, + OUT PULONG SlotNumbers, + OUT PULONG ReturnedLength) +{ + PAGED_CODE(); + + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS +NTAPI +xHalSetSystemInformation(IN HAL_SET_INFORMATION_CLASS InformationClass, + IN ULONG BufferSize, + IN PVOID Buffer) +{ + PAGED_CODE(); + + return STATUS_INVALID_LEVEL; +} + +NTSTATUS +NTAPI +xHalQuerySystemInformation(IN HAL_QUERY_INFORMATION_CLASS InformationClass, + IN ULONG BufferSize, + IN OUT PVOID Buffer, + OUT PULONG ReturnedLength) +{ + PAGED_CODE(); + + return STATUS_INVALID_LEVEL; +} + +VOID +NTAPI +xHalLocateHiberRanges(IN PVOID MemoryMap) +{ + /* Nothing */ + return; +} + +NTSTATUS +NTAPI +xHalRegisterBusHandler(IN INTERFACE_TYPE InterfaceType, + IN BUS_DATA_TYPE ConfigSpace, + IN ULONG BusNumber, + IN INTERFACE_TYPE ParentInterfaceType, + IN ULONG ParentBusNumber, + IN ULONG ContextSize, + IN PINSTALL_BUS_HANDLER InstallCallback, + OUT PBUS_HANDLER *BusHandler) +{ + PAGED_CODE(); + + return STATUS_NOT_SUPPORTED; +} + +VOID +NTAPI +xHalSetWakeAlarm(IN ULONGLONG AlartTime, + IN PTIME_FIELDS TimeFields) +{ + /* Nothing */ + return; +} + +BOOLEAN +NTAPI +xHalTranslateBusAddress(IN INTERFACE_TYPE InterfaceType, + IN ULONG BusNumber, + IN PHYSICAL_ADDRESS BusAddress, + IN OUT PULONG AddressSpace, + OUT PPHYSICAL_ADDRESS TranslatedAddress) +{ + KeBugCheckEx(HAL_INITIALIZATION_FAILED, 0, 0, 0, 0); + + return FALSE; +} + +NTSTATUS +NTAPI +xHalAllocateMapRegisters(IN PADAPTER_OBJECT AdapterObject, + IN ULONG Unknown, + IN ULONG Unknown2, + PMAP_REGISTER_ENTRY Registers) +{ + PAGED_CODE(); + + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +xKdSetupPciDeviceForDebugging(IN PVOID LoaderBlock OPTIONAL, + IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) +{ + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +xKdReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) +{ + return STATUS_NOT_IMPLEMENTED; +} + +PVOID +NTAPI +xKdGetAcpiTablePhase(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock, + IN ULONG Signature) +{ + return NULL; +} + +PVOID +NTAPI +MatchAll(IN PHYSICAL_ADDRESS PhysicalAddress, + IN ULONG NumberPages, + IN BOOLEAN FlushCurrentTLB) +{ + return NULL; +} + +VOID +NTAPI +xKdUnmapVirtualAddress(IN PVOID VirtualAddress, + IN ULONG NumberPages, + IN BOOLEAN FlushCurrentTLB) +{ + /* Nothing */ + return; +} Modified: trunk/reactos/ntoskrnl/include/internal/hal.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
============================================================================== --- trunk/reactos/ntoskrnl/include/internal/hal.h [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/include/internal/hal.h [iso-8859-1] Sat Mar 12 12:56:36 2011 @@ -4,6 +4,7 @@ * FILE: ntoskrnl/include/hal.h * PURPOSE: Internal header for the I/O HAL Functions (Fstub) * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) + * Pierre Schweitzer (pierre.schweitzer(a)reactos.org) */ #pragma once @@ -73,13 +74,167 @@ NTSTATUS NTAPI -xHalGetInterruptTranslator(IN INTERFACE_TYPE ParentInterfaceType, - IN ULONG ParentBusNumber, - IN INTERFACE_TYPE BridgeInterfaceType, - IN USHORT Size, - IN USHORT Version, - OUT PTRANSLATOR_INTERFACE Translator, - OUT PULONG BridgeBusNumber); +xHalGetInterruptTranslator( + IN INTERFACE_TYPE ParentInterfaceType, + IN ULONG ParentBusNumber, + IN INTERFACE_TYPE BridgeInterfaceType, + IN USHORT Size, + IN USHORT Version, + OUT PTRANSLATOR_INTERFACE Translator, + OUT PULONG BridgeBusNumber +); + +PBUS_HANDLER +FASTCALL +xHalHandlerForBus( + IN INTERFACE_TYPE InterfaceType, + IN ULONG BusNumber +); + +VOID +FASTCALL +xHalReferenceHandler( + IN PBUS_HANDLER BusHandler +); + +NTSTATUS +NTAPI +xHalInitPnpDriver( + VOID +); + +NTSTATUS +NTAPI +xHalInitPowerManagement( + IN PPM_DISPATCH_TABLE PmDriverDispatchTable, + OUT PPM_DISPATCH_TABLE *PmHalDispatchTable +); + +NTSTATUS +NTAPI +xHalStartMirroring( + VOID +); + +NTSTATUS +NTAPI +xHalEndMirroring( + IN ULONG PassNumber +); + +NTSTATUS +NTAPI +xHalMirrorPhysicalMemory( + IN PHYSICAL_ADDRESS PhysicalAddress, + IN LARGE_INTEGER NumberOfBytes +); + +NTSTATUS +NTAPI +xHalQueryBusSlots( + IN PBUS_HANDLER BusHandler, + IN ULONG BufferSize, + OUT PULONG SlotNumbers, + OUT PULONG ReturnedLength +); + +NTSTATUS +NTAPI +xHalSetSystemInformation( + IN HAL_SET_INFORMATION_CLASS InformationClass, + IN ULONG BufferSize, + IN PVOID Buffer +); + +NTSTATUS +NTAPI +xHalQuerySystemInformation( + IN HAL_QUERY_INFORMATION_CLASS InformationClass, + IN ULONG BufferSize, + IN OUT PVOID Buffer, + OUT PULONG ReturnedLength +); + +VOID +NTAPI +xHalLocateHiberRanges( + IN PVOID MemoryMap +); + +NTSTATUS +NTAPI +xHalRegisterBusHandler( + IN INTERFACE_TYPE InterfaceType, + IN BUS_DATA_TYPE ConfigSpace, + IN ULONG BusNumber, + IN INTERFACE_TYPE ParentInterfaceType, + IN ULONG ParentBusNumber, + IN ULONG ContextSize, + IN PINSTALL_BUS_HANDLER InstallCallback, + OUT PBUS_HANDLER *BusHandler +); + +VOID +NTAPI +xHalSetWakeAlarm( + IN ULONGLONG AlartTime, + IN PTIME_FIELDS TimeFields +); + +BOOLEAN +NTAPI +xHalTranslateBusAddress( + IN INTERFACE_TYPE InterfaceType, + IN ULONG BusNumber, + IN PHYSICAL_ADDRESS BusAddress, + IN OUT PULONG AddressSpace, + OUT PPHYSICAL_ADDRESS TranslatedAddress +); + +NTSTATUS +NTAPI +xHalAllocateMapRegisters( + IN PADAPTER_OBJECT AdapterObject, + IN ULONG Unknown, + IN ULONG Unknown2, + PMAP_REGISTER_ENTRY Registers +); + +NTSTATUS +NTAPI +xKdSetupPciDeviceForDebugging( + IN PVOID LoaderBlock OPTIONAL, + IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice +); + +NTSTATUS +NTAPI +xKdReleasePciDeviceForDebugging( + IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice +); + +PVOID +NTAPI +xKdGetAcpiTablePhase( + IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock, + IN ULONG Signature +); + +PVOID +NTAPI +MatchAll( + IN PHYSICAL_ADDRESS PhysicalAddress, + IN ULONG NumberPages, + IN BOOLEAN FlushCurrentTLB +); + +VOID +NTAPI +xKdUnmapVirtualAddress( + IN PVOID VirtualAddress, + IN ULONG NumberPages, + IN BOOLEAN FlushCurrentTLB +); //
13 years, 9 months
1
0
0
0
[pschweitzer] 51024: [EXPLORER] Make fix of r51022 compiler independant, on Johannes' suggestion.
by pschweitzer@svn.reactos.org
Author: pschweitzer Date: Sat Mar 12 11:53:55 2011 New Revision: 51024 URL:
http://svn.reactos.org/svn/reactos?rev=51024&view=rev
Log: [EXPLORER] Make fix of r51022 compiler independant, on Johannes' suggestion. Modified: trunk/reactos/base/shell/explorer/shell/pane.cpp Modified: trunk/reactos/base/shell/explorer/shell/pane.cpp URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer/shell/…
============================================================================== --- trunk/reactos/base/shell/explorer/shell/pane.cpp [iso-8859-1] (original) +++ trunk/reactos/base/shell/explorer/shell/pane.cpp [iso-8859-1] Sat Mar 12 11:53:55 2011 @@ -702,7 +702,10 @@ item.mask = HDI_WIDTH; item.cxy = 0; - for(; i<COLUMNS && x+_widths[i]<scroll_pos; i++) { + for(; i<COLUMNS; i++) { + if (x + _widths[i] >= scroll_pos) + break; + x += _widths[i]; Header_SetItem(_hwndHeader, i, &item); }
13 years, 9 months
1
0
0
0
[gadamopoulos] 51023: [win32k] -In WH_KEYBOARD hook, lparam isn't a pointer to KBDLLHOOKSTRUCT See issue #5991 for more details.
by gadamopoulos@svn.reactos.org
Author: gadamopoulos Date: Sat Mar 12 11:08:06 2011 New Revision: 51023 URL:
http://svn.reactos.org/svn/reactos?rev=51023&view=rev
Log: [win32k] -In WH_KEYBOARD hook, lparam isn't a pointer to KBDLLHOOKSTRUCT See issue #5991 for more details. Modified: trunk/reactos/subsystems/win32/win32k/ntuser/hook.c Modified: trunk/reactos/subsystems/win32/win32k/ntuser/hook.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/hook.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/hook.c [iso-8859-1] Sat Mar 12 11:08:06 2011 @@ -77,7 +77,6 @@ case WH_KEYBOARD: uTimeout = 200; Block = TRUE; - Size = sizeof(KBDLLHOOKSTRUCT); break; }
13 years, 9 months
1
0
0
0
[pschweitzer] 51022: [EXPLORER] Fix array access out of bounds. See issue #5990 for more details
by pschweitzer@svn.reactos.org
Author: pschweitzer Date: Sat Mar 12 08:23:05 2011 New Revision: 51022 URL:
http://svn.reactos.org/svn/reactos?rev=51022&view=rev
Log: [EXPLORER] Fix array access out of bounds. See issue #5990 for more details Modified: trunk/reactos/base/shell/explorer/shell/pane.cpp Modified: trunk/reactos/base/shell/explorer/shell/pane.cpp URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer/shell/…
============================================================================== --- trunk/reactos/base/shell/explorer/shell/pane.cpp [iso-8859-1] (original) +++ trunk/reactos/base/shell/explorer/shell/pane.cpp [iso-8859-1] Sat Mar 12 08:23:05 2011 @@ -702,7 +702,7 @@ item.mask = HDI_WIDTH; item.cxy = 0; - for(; x+_widths[i]<scroll_pos && i<COLUMNS; i++) { + for(; i<COLUMNS && x+_widths[i]<scroll_pos; i++) { x += _widths[i]; Header_SetItem(_hwndHeader, i, &item); }
13 years, 9 months
1
0
0
0
[jimtabor] 51021: [Win32k] - Move the drag detection routine to kernel space, this will decrease the number of kernel calls that is noticeable with slower systems running an emulator.
by jimtabor@svn.reactos.org
Author: jimtabor Date: Sat Mar 12 01:29:08 2011 New Revision: 51021 URL:
http://svn.reactos.org/svn/reactos?rev=51021&view=rev
Log: [Win32k] - Move the drag detection routine to kernel space, this will decrease the number of kernel calls that is noticeable with slower systems running an emulator. Modified: trunk/reactos/dll/win32/user32/windows/input.c trunk/reactos/subsystems/win32/win32k/include/winpos.h trunk/reactos/subsystems/win32/win32k/ntuser/focus.c trunk/reactos/subsystems/win32/win32k/ntuser/message.c trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c Modified: trunk/reactos/dll/win32/user32/windows/input.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/i…
============================================================================== --- trunk/reactos/dll/win32/user32/windows/input.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/user32/windows/input.c [iso-8859-1] Sat Mar 12 01:29:08 2011 @@ -48,9 +48,8 @@ HWND hWnd, POINT pt) { + return NtUserDragDetect(hWnd, pt); #if 0 - return NtUserDragDetect(hWnd, pt); -#else MSG msg; RECT rect; POINT tmp; Modified: trunk/reactos/subsystems/win32/win32k/include/winpos.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/in…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/include/winpos.h [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/include/winpos.h [iso-8859-1] Sat Mar 12 01:29:08 2011 @@ -8,6 +8,9 @@ (!(WndObject)->hrgnClip || ((WndObject)->style & WS_MINIMIZE) || \ NtGdiPtInRegion((WndObject)->hrgnClip, (INT)((x) - (WndObject)->rcWindow.left), \ (INT)((y) - (WndObject)->rcWindow.top)))) + +#define IntPtInRect(lprc,pt) \ + ((pt.x >= (lprc)->left) && (pt.x < (lprc)->right) && (pt.y >= (lprc)->top) && (pt.y < (lprc)->bottom)) UINT FASTCALL co_WinPosArrangeIconicWindows(PWND parent); Modified: trunk/reactos/subsystems/win32/win32k/ntuser/focus.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/focus.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/focus.c [iso-8859-1] Sat Mar 12 01:29:08 2011 @@ -534,55 +534,63 @@ END_CLEANUP; } + +HWND FASTCALL +co_UserSetCapture(HWND hWnd) +{ + PTHREADINFO pti; + PUSER_MESSAGE_QUEUE ThreadQueue; + PWND Window, pWnd; + HWND hWndPrev; + + pti = PsGetCurrentThreadWin32Thread(); + ThreadQueue = pti->MessageQueue; + + if ((Window = UserGetWindowObject(hWnd))) + { + if (Window->head.pti->MessageQueue != ThreadQueue) + { + return NULL; + } + } + + hWndPrev = MsqSetStateWindow(ThreadQueue, MSQ_STATE_CAPTURE, hWnd); + + if (hWndPrev) + { + pWnd = UserGetWindowObject(hWndPrev); + if (pWnd) + IntNotifyWinEvent(EVENT_SYSTEM_CAPTUREEND, pWnd, OBJID_WINDOW, CHILDID_SELF, WEF_SETBYWNDPTI); + } + + /* also remove other windows if not capturing anymore */ + if (hWnd == NULL) + { + MsqSetStateWindow(ThreadQueue, MSQ_STATE_MENUOWNER, NULL); + MsqSetStateWindow(ThreadQueue, MSQ_STATE_MOVESIZE, NULL); + } + + if (Window) + IntNotifyWinEvent(EVENT_SYSTEM_CAPTURESTART, Window, OBJID_WINDOW, CHILDID_SELF, WEF_SETBYWNDPTI); + + co_IntPostOrSendMessage(hWndPrev, WM_CAPTURECHANGED, 0, (LPARAM)hWnd); + ThreadQueue->CaptureWindow = hWnd; + + return hWndPrev; +} + /* * @implemented */ HWND APIENTRY NtUserSetCapture(HWND hWnd) { - PTHREADINFO pti; - PUSER_MESSAGE_QUEUE ThreadQueue; - PWND Window, pWnd; - HWND hWndPrev; DECLARE_RETURN(HWND); DPRINT("Enter NtUserSetCapture(%x)\n", hWnd); UserEnterExclusive(); - pti = PsGetCurrentThreadWin32Thread(); - ThreadQueue = pti->MessageQueue; - - if((Window = UserGetWindowObject(hWnd))) - { - if(Window->head.pti->MessageQueue != ThreadQueue) - { - RETURN(NULL); - } - } - - hWndPrev = MsqSetStateWindow(ThreadQueue, MSQ_STATE_CAPTURE, hWnd); - - if (hWndPrev) - { - pWnd = UserGetWindowObject(hWndPrev); - if (pWnd) - IntNotifyWinEvent(EVENT_SYSTEM_CAPTUREEND, pWnd, OBJID_WINDOW, CHILDID_SELF, WEF_SETBYWNDPTI); - } - - /* also remove other windows if not capturing anymore */ - if (hWnd == NULL) - { - MsqSetStateWindow(ThreadQueue, MSQ_STATE_MENUOWNER, NULL); - MsqSetStateWindow(ThreadQueue, MSQ_STATE_MOVESIZE, NULL); - } - - if (Window) - IntNotifyWinEvent(EVENT_SYSTEM_CAPTURESTART, Window, OBJID_WINDOW, CHILDID_SELF, WEF_SETBYWNDPTI); - - co_IntPostOrSendMessage(hWndPrev, WM_CAPTURECHANGED, 0, (LPARAM)hWnd); - ThreadQueue->CaptureWindow = hWnd; - - RETURN( hWndPrev); + RETURN( co_UserSetCapture(hWnd)); CLEANUP: DPRINT("Leave NtUserSetCapture, ret=%i\n",_ret_); Modified: trunk/reactos/subsystems/win32/win32k/ntuser/message.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/message.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/message.c [iso-8859-1] Sat Mar 12 01:29:08 2011 @@ -16,6 +16,7 @@ #include <debug.h> BOOLEAN NTAPI PsGetProcessExitProcessCalled(PEPROCESS Process); +HWND FASTCALL co_UserSetCapture(HWND hWnd); #define PM_BADMSGFLAGS ~((QS_RAWINPUT << 16)|PM_QS_SENDMESSAGE|PM_QS_PAINT|PM_QS_POSTMESSAGE|PM_QS_INPUT|PM_NOYIELD|PM_REMOVE) @@ -1698,6 +1699,76 @@ /** Functions ******************************************************************/ +BOOL +APIENTRY +NtUserDragDetect( + HWND hWnd, + POINT pt) // Just like the User call. +{ + MSG msg; + RECT rect; + WORD wDragWidth, wDragHeight; + DECLARE_RETURN(BOOL); + + DPRINT("Enter NtUserDragDetect(%x)\n", hWnd); + UserEnterExclusive(); + + wDragWidth = UserGetSystemMetrics(SM_CXDRAG); + wDragHeight= UserGetSystemMetrics(SM_CYDRAG); + + rect.left = pt.x - wDragWidth; + rect.right = pt.x + wDragWidth; + + rect.top = pt.y - wDragHeight; + rect.bottom = pt.y + wDragHeight; + + co_UserSetCapture(hWnd); + + for (;;) + { + while (co_IntGetPeekMessage( &msg, 0, WM_MOUSEFIRST, WM_MOUSELAST, PM_REMOVE, FALSE ) || + co_IntGetPeekMessage( &msg, 0, WM_QUEUESYNC, WM_QUEUESYNC, PM_REMOVE, FALSE ) || + co_IntGetPeekMessage( &msg, 0, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE, FALSE ) ) + { + if ( msg.message == WM_LBUTTONUP ) + { + co_UserSetCapture(NULL); + RETURN( FALSE); + } + if ( msg.message == WM_MOUSEMOVE ) + { + POINT tmp; + tmp.x = (short)LOWORD(msg.lParam); + tmp.y = (short)HIWORD(msg.lParam); + if( !IntPtInRect( &rect, tmp ) ) + { + co_UserSetCapture(NULL); + RETURN( TRUE); + } + } + if ( msg.message == WM_KEYDOWN ) + { + if ( msg.wParam == VK_ESCAPE ) + { + co_UserSetCapture(NULL); + RETURN( TRUE); + } + } + if ( msg.message == WM_QUEUESYNC ) + { + co_HOOK_CallHooks( WH_CBT, HCBT_QS, 0, 0 ); + } + } + co_IntWaitMessage(NULL, 0, 0); + } + RETURN( FALSE); + +CLEANUP: + DPRINT("Leave NtUserDragDetect, ret=%i\n",_ret_); + UserLeave(); + END_CLEANUP; +} + BOOL APIENTRY NtUserPostMessage(HWND hWnd, UINT Msg, Modified: trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c [iso-8859-1] Sat Mar 12 01:29:08 2011 @@ -1338,16 +1338,6 @@ return 0; } -BOOL -APIENTRY -NtUserDragDetect( - HWND hWnd, - POINT pt) // Just like the User call. -{ - UNIMPLEMENTED - return 0; -} - /* * @unimplemented */
13 years, 9 months
1
0
0
0
[ekohl] 51020: [SETUPAPI] Implement CM_Register_Device_Driver[_Ex].
by ekohl@svn.reactos.org
Author: ekohl Date: Fri Mar 11 18:58:23 2011 New Revision: 51020 URL:
http://svn.reactos.org/svn/reactos?rev=51020&view=rev
Log: [SETUPAPI] Implement CM_Register_Device_Driver[_Ex]. Modified: trunk/reactos/dll/win32/setupapi/cfgmgr.c trunk/reactos/dll/win32/setupapi/setupapi.spec Modified: trunk/reactos/dll/win32/setupapi/cfgmgr.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/setupapi/cfgmgr.…
============================================================================== --- trunk/reactos/dll/win32/setupapi/cfgmgr.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/setupapi/cfgmgr.c [iso-8859-1] Fri Mar 11 18:58:23 2011 @@ -4546,6 +4546,72 @@ pulLength, &ulTransferLength, 0); + } + RpcExcept(EXCEPTION_EXECUTE_HANDLER) + { + ret = RpcStatusToCmStatus(RpcExceptionCode()); + } + RpcEndExcept; + + return ret; +} + + +/*********************************************************************** + * CM_Register_Device_Driver [SETUPAPI.@] + */ +CONFIGRET WINAPI CM_Register_Device_Driver( + DEVINST dnDevInst, ULONG ulFlags) +{ + TRACE("%lx 0x%08lx\n", dnDevInst, ulFlags); + return CM_Register_Device_Driver_Ex(dnDevInst, ulFlags, NULL); +} + + +/*********************************************************************** + * CM_Register_Device_Driver [SETUPAPI.@] + */ +CONFIGRET WINAPI CM_Register_Device_Driver_Ex( + DEVINST dnDevInst, ULONG ulFlags, HMACHINE hMachine) +{ + RPC_BINDING_HANDLE BindingHandle = NULL; + HSTRING_TABLE StringTable = NULL; + LPWSTR lpDevInst; + CONFIGRET ret; + + TRACE("%lx 0x%08lx %p\n", dnDevInst, ulFlags, hMachine); + + if (dnDevInst == 0) + return CR_INVALID_DEVNODE; + + if (ulFlags & ~CM_REGISTER_DEVICE_DRIVER_BITS) + return CR_INVALID_FLAG; + + if (hMachine != NULL) + { + BindingHandle = ((PMACHINE_INFO)hMachine)->BindingHandle; + if (BindingHandle == NULL) + return CR_FAILURE; + + StringTable = ((PMACHINE_INFO)hMachine)->StringTable; + if (StringTable == 0) + return CR_FAILURE; + } + else + { + if (!PnpGetLocalHandles(&BindingHandle, &StringTable)) + return CR_FAILURE; + } + + lpDevInst = pSetupStringTableStringFromId(StringTable, dnDevInst); + if (lpDevInst == NULL) + return CR_INVALID_DEVNODE; + + RpcTryExcept + { + ret = PNP_RegisterDriver(BindingHandle, + lpDevInst, + ulFlags); } RpcExcept(EXCEPTION_EXECUTE_HANDLER) { Modified: trunk/reactos/dll/win32/setupapi/setupapi.spec URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/setupapi/setupap…
============================================================================== --- trunk/reactos/dll/win32/setupapi/setupapi.spec [iso-8859-1] (original) +++ trunk/reactos/dll/win32/setupapi/setupapi.spec [iso-8859-1] Fri Mar 11 18:58:23 2011 @@ -168,8 +168,8 @@ @ stub CM_Query_Resource_Conflict_List @ stdcall CM_Reenumerate_DevNode(long long) @ stdcall CM_Reenumerate_DevNode_Ex(long long long) -@ stub CM_Register_Device_Driver -@ stub CM_Register_Device_Driver_Ex +@ stdcall CM_Register_Device_Driver(long long) +@ stdcall CM_Register_Device_Driver_Ex(long long ptr) @ stdcall CM_Register_Device_InterfaceA(long ptr str str ptr long) @ stdcall CM_Register_Device_InterfaceW(long ptr wstr wstr ptr long) @ stdcall CM_Register_Device_Interface_ExA(long ptr str str ptr long long)
13 years, 9 months
1
0
0
0
[jgardou] 51019: [OPENGL32] - use well defined macro instead of weird pointer calculation - reset thread specific data on a thread detach call Fixes crash in heroes 3 and probably others
by jgardou@svn.reactos.org
Author: jgardou Date: Fri Mar 11 18:17:34 2011 New Revision: 51019 URL:
http://svn.reactos.org/svn/reactos?rev=51019&view=rev
Log: [OPENGL32] - use well defined macro instead of weird pointer calculation - reset thread specific data on a thread detach call Fixes crash in heroes 3 and probably others Modified: trunk/reactos/dll/win32/opengl32/icdtable.h trunk/reactos/dll/win32/opengl32/opengl32.c trunk/reactos/dll/win32/opengl32/wgl.c Modified: trunk/reactos/dll/win32/opengl32/icdtable.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/opengl32/icdtabl…
============================================================================== --- trunk/reactos/dll/win32/opengl32/icdtable.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/opengl32/icdtable.h [iso-8859-1] Fri Mar 11 18:17:34 2011 @@ -18,6 +18,8 @@ PROC dispatch_table[812]; /*!< Table containing \a num_funcs pointers to OpenGL functions */ } ICDTable, *PICDTable; +#define DISPATCH_TABLE_SIZE 812*sizeof(PROC) + #endif /* OPENGL32_PRIVATE_ICDTABLE_H */ /* EOF */ Modified: trunk/reactos/dll/win32/opengl32/opengl32.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/opengl32/opengl3…
============================================================================== --- trunk/reactos/dll/win32/opengl32/opengl32.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/opengl32/opengl32.c [iso-8859-1] Fri Mar 11 18:17:34 2011 @@ -34,7 +34,7 @@ dispatchTable = (PROC*)HeapAlloc( GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS | HEAP_ZERO_MEMORY, - sizeof (((ICDTable *)(0))->dispatch_table) ); + DISPATCH_TABLE_SIZE ); if (dispatchTable == NULL) { DBGPRINT( "Error: Couldn't allocate GL dispatch table" ); @@ -84,6 +84,7 @@ GetLastError() ); lpData = NULL; } + TlsSetValue( OPENGL32_tls, NULL ); if (teb->glTable != NULL) { Modified: trunk/reactos/dll/win32/opengl32/wgl.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/opengl32/wgl.c?r…
============================================================================== --- trunk/reactos/dll/win32/opengl32/wgl.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/opengl32/wgl.c [iso-8859-1] Fri Mar 11 18:17:34 2011 @@ -454,13 +454,12 @@ /* save table */ size = sizeof (PROC) * table->num_funcs; memcpy( tebTable, table->dispatch_table, size ); - memset( tebTable + table->num_funcs, 0, - sizeof (table->dispatch_table) - size ); + memset( tebTable + table->num_funcs, 0, DISPATCH_TABLE_SIZE - size ); } else { DBGPRINT( "Unsetting current context" ); - memset( tebTable, 0, sizeof (table->dispatch_table) ); + memset( tebTable, 0, DISPATCH_TABLE_SIZE ); } /* put in empty functions as long as we dont have a fallback */
13 years, 9 months
1
0
0
0
[jgardou] 51018: [GDI32_APITEST] - Test Rectangle function. Don't laugh, ROS fails those tests and fixing this breaks the GUI.
by jgardou@svn.reactos.org
Author: jgardou Date: Fri Mar 11 15:32:54 2011 New Revision: 51018 URL:
http://svn.reactos.org/svn/reactos?rev=51018&view=rev
Log: [GDI32_APITEST] - Test Rectangle function. Don't laugh, ROS fails those tests and fixing this breaks the GUI. Added: trunk/rostests/apitests/gdi32/Rectangle.c (with props) Modified: trunk/rostests/apitests/gdi32/CMakeLists.txt trunk/rostests/apitests/gdi32/GetPixel.c trunk/rostests/apitests/gdi32/gdi32_apitest.rbuild trunk/rostests/apitests/gdi32/testlist.c Modified: trunk/rostests/apitests/gdi32/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/gdi32/CMakeLists…
============================================================================== --- trunk/rostests/apitests/gdi32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/rostests/apitests/gdi32/CMakeLists.txt [iso-8859-1] Fri Mar 11 15:32:54 2011 @@ -39,6 +39,7 @@ GetTextExtentExPoint.c GetTextFace.c MaskBlt.c + Rectangle.c SelectObject.c SetDCPenColor.c SetDIBits.c Modified: trunk/rostests/apitests/gdi32/GetPixel.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/gdi32/GetPixel.c…
============================================================================== --- trunk/rostests/apitests/gdi32/GetPixel.c [iso-8859-1] (original) +++ trunk/rostests/apitests/gdi32/GetPixel.c [iso-8859-1] Fri Mar 11 15:32:54 2011 @@ -1,7 +1,7 @@ /* * PROJECT: ReactOS api tests * LICENSE: GPL - See COPYING in the top level directory - * PURPOSE: Test for SetDIBits + * PURPOSE: Test for GetPixel * PROGRAMMERS: Jérôme Gardou */ Added: trunk/rostests/apitests/gdi32/Rectangle.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/gdi32/Rectangle.…
============================================================================== --- trunk/rostests/apitests/gdi32/Rectangle.c (added) +++ trunk/rostests/apitests/gdi32/Rectangle.c [iso-8859-1] Fri Mar 11 15:32:54 2011 @@ -1,0 +1,115 @@ +/* + * PROJECT: ReactOS api tests + * LICENSE: GPL - See COPYING in the top level directory + * PURPOSE: Test for Rectangle + * PROGRAMMERS: Jérôme Gardou + */ + +#include <stdio.h> +#include <wine/test.h> +#include <windows.h> + +void Test_Rectangle(void) +{ + HDC hdc; + HBITMAP hBmp; + BOOL ret; + HBRUSH hBrush; + COLORREF color; + + hdc = CreateCompatibleDC(NULL); + ok(hdc != NULL, "Failed to create the DC!\n"); + hBmp = CreateCompatibleBitmap(hdc, 4, 4); + ok(hBmp != NULL, "Failed to create the Bitmap!\n"); + hBmp = SelectObject(hdc, hBmp); + ok(hBmp != NULL, "Failed to select the Bitmap!\n"); + + hBrush = CreateSolidBrush(RGB(0, 0, 0)); + ok(hBrush != NULL, "Failed to create a solid brush!\n"); + hBrush = SelectObject(hdc, hBrush); + ok(hBrush != NULL, "Failed to select the brush!\n"); + + /* Blank the bitmap */ + ret = BitBlt(hdc, 0, 0, 4, 4, NULL, 0, 0, WHITENESS); + ok(ret, "BitBlt failed to blank the bitmap!\n"); + + /* Try inverted rectangle coordinates */ + ret = Rectangle(hdc, 0, 2, 2, 0); + ok(ret, "Rectangle failed!"); + color = GetPixel(hdc, 0, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 2); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 0, 2); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 0); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 1, 1); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + + ret = BitBlt(hdc, 0, 0, 4, 4, NULL, 0, 0, WHITENESS); + ok(ret, "BitBlt failed to blank the bitmap!\n"); + /* Try well ordered rectangle coordinates */ + ret = Rectangle(hdc, 0, 0, 2, 2); + ok(ret, "Rectangle failed!"); + color = GetPixel(hdc, 0, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 2); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 0, 2); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 0); + ok( color == RGB(255, 255, 255), "Expected 0x00FFFFFF, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 1, 1); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + + /* Same tests with GM_ADVANCED */ + ok(SetGraphicsMode(hdc, GM_ADVANCED) == GM_COMPATIBLE, "Default mode for the DC is not GM_COMPATIBLE.\n"); + + /* Blank the bitmap */ + ret = BitBlt(hdc, 0, 0, 4, 4, NULL, 0, 0, WHITENESS); + ok(ret, "BitBlt failed to blank the bitmap!\n"); + + /* Try inverted rectangle coordinates */ + ret = Rectangle(hdc, 0, 2, 2, 0); + ok(ret, "Rectangle failed!"); + color = GetPixel(hdc, 0, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 2); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 0, 2); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 1, 1); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + + ret = BitBlt(hdc, 0, 0, 4, 4, NULL, 0, 0, WHITENESS); + ok(ret, "BitBlt failed to blank the bitmap!\n"); + /* Try well ordered rectangle coordinates */ + ret = Rectangle(hdc, 0, 0, 2, 2); + ok(ret, "Rectangle failed!"); + color = GetPixel(hdc, 0, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 2); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 0, 2); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 2, 0); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + color = GetPixel(hdc, 1, 1); + ok( color == RGB(0, 0, 0), "Expected 0, got 0x%08x\n", (UINT)color); + + + hBmp = SelectObject(hdc, hBmp); + hBrush = SelectObject(hdc, hBrush); + DeleteObject(hBmp); + DeleteObject(hBrush); + DeleteDC(hdc); +} + + +START_TEST(Rectangle) +{ + Test_Rectangle(); +} Propchange: trunk/rostests/apitests/gdi32/Rectangle.c ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/rostests/apitests/gdi32/gdi32_apitest.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/gdi32/gdi32_apit…
============================================================================== --- trunk/rostests/apitests/gdi32/gdi32_apitest.rbuild [iso-8859-1] (original) +++ trunk/rostests/apitests/gdi32/gdi32_apitest.rbuild [iso-8859-1] Fri Mar 11 15:32:54 2011 @@ -46,6 +46,7 @@ <file>GetTextExtentExPoint.c</file> <file>GetTextFace.c</file> <file>MaskBlt.c</file> + <file>Rectangle.c</file> <file>SelectObject.c</file> <file>SetDCPenColor.c</file> <file>SetDIBits.c</file> Modified: trunk/rostests/apitests/gdi32/testlist.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/gdi32/testlist.c…
============================================================================== --- trunk/rostests/apitests/gdi32/testlist.c [iso-8859-1] (original) +++ trunk/rostests/apitests/gdi32/testlist.c [iso-8859-1] Fri Mar 11 15:32:54 2011 @@ -42,6 +42,7 @@ extern void func_GetTextExtentExPoint(void); extern void func_GetTextFace(void); extern void func_MaskBlt(void); +extern void func_Rectangle(void); extern void func_SelectObject(void); extern void func_SetDCPenColor(void); extern void func_SetDIBits(void); @@ -89,6 +90,7 @@ { "GetTextExtentExPoint", func_GetTextExtentExPoint }, { "GetTextFace", func_GetTextFace }, { "MaskBlt", func_MaskBlt }, + { "Rectangle", func_Rectangle }, { "SelectObject", func_SelectObject }, { "SetDCPenColor", func_SetDCPenColor }, { "SetDIBits", func_SetDIBits },
13 years, 9 months
1
0
0
0
[pschweitzer] 51017: [NTOSKRNL] Revert r51016 that quite magically breaks Qemu test bot (Registry corruption?). Everything was (and is still fine) on VirtualBox. It will be put back online once the...
by pschweitzer@svn.reactos.org
Author: pschweitzer Date: Fri Mar 11 15:17:59 2011 New Revision: 51017 URL:
http://svn.reactos.org/svn/reactos?rev=51017&view=rev
Log: [NTOSKRNL] Revert r51016 that quite magically breaks Qemu test bot (Registry corruption?). Everything was (and is still fine) on VirtualBox. It will be put back online once the issue will have been fixed. Modified: trunk/reactos/ntoskrnl/fstub/halstub.c trunk/reactos/ntoskrnl/include/internal/hal.h Modified: trunk/reactos/ntoskrnl/fstub/halstub.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fstub/halstub.c?r…
============================================================================== --- trunk/reactos/ntoskrnl/fstub/halstub.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/fstub/halstub.c [iso-8859-1] Fri Mar 11 15:17:59 2011 @@ -4,7 +4,6 @@ * FILE: ntoskrnl/fstub/halstub.c * PURPOSE: I/O Stub HAL Routines * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) - Pierre Schweitzer (pierre.schweitzer(a)reactos.org) */ /* INCLUDES ******************************************************************/ @@ -18,51 +17,51 @@ HAL_DISPATCH HalDispatchTable = { HAL_DISPATCH_VERSION, - xHalQuerySystemInformation, - xHalSetSystemInformation, - xHalQueryBusSlots, + (pHalQuerySystemInformation)NULL, + (pHalSetSystemInformation)NULL, + (pHalQueryBusSlots)NULL, 0, xHalExamineMBR, xHalIoAssignDriveLetters, xHalIoReadPartitionTable, xHalIoSetPartitionInformation, xHalIoWritePartitionTable, - xHalHandlerForBus, - xHalReferenceHandler, - xHalReferenceHandler, - xHalInitPnpDriver, - xHalInitPowerManagement, + (pHalHandlerForBus)NULL, + (pHalReferenceBusHandler)NULL, + (pHalReferenceBusHandler)NULL, + (pHalInitPnpDriver)NULL, + (pHalInitPowerManagement)NULL, (pHalGetDmaAdapter) NULL, xHalGetInterruptTranslator, - xHalStartMirroring, - xHalEndMirroring, - xHalMirrorPhysicalMemory, + (pHalStartMirroring)NULL, + (pHalEndMirroring)NULL, + (pHalMirrorPhysicalMemory)NULL, xHalEndOfBoot, - xHalMirrorPhysicalMemory + (pHalMirrorVerify)NULL }; HAL_PRIVATE_DISPATCH HalPrivateDispatchTable = { HAL_PRIVATE_DISPATCH_VERSION, - xHalHandlerForBus, - (pHalHandlerForConfigSpace)xHalHandlerForBus, - xHalLocateHiberRanges, - xHalRegisterBusHandler, + (pHalHandlerForBus)NULL, + (pHalHandlerForConfigSpace)NULL, + (pHalLocateHiberRanges)NULL, + (pHalRegisterBusHandler)NULL, xHalSetWakeEnable, - xHalSetWakeAlarm, - xHalTranslateBusAddress, - (pHalAssignSlotResources)xHalTranslateBusAddress, + (pHalSetWakeAlarm)NULL, + (pHalTranslateBusAddress)NULL, + (pHalAssignSlotResources)NULL, xHalHaltSystem, (pHalFindBusAddressTranslation)NULL, (pHalResetDisplay)NULL, - xHalAllocateMapRegisters, - xKdSetupPciDeviceForDebugging, - xKdReleasePciDeviceForDebugging, - xKdGetAcpiTablePhase, - (pKdCheckPowerButton)xHalReferenceHandler, - xHalVectorToIDTEntry, - (pKdMapPhysicalMemory64)MatchAll, - (pKdUnmapVirtualAddress)xKdUnmapVirtualAddress + (pHalAllocateMapRegisters)NULL, + (pKdSetupPciDeviceForDebugging)NULL, + (pKdReleasePciDeviceForDebugging)NULL, + (pKdGetAcpiTablePhase0)NULL, + (pKdCheckPowerButton)NULL, + (pHalVectorToIDTEntry)xHalVectorToIDTEntry, + (pKdMapPhysicalMemory64)NULL, + (pKdUnmapVirtualAddress)NULL }; /* FUNCTIONS *****************************************************************/ @@ -87,8 +86,6 @@ NTAPI xHalEndOfBoot(VOID) { - PAGED_CODE(); - /* Nothing */ return; } @@ -100,193 +97,3 @@ /* Nothing */ return; } - -PBUS_HANDLER -FASTCALL -xHalHandlerForBus(IN INTERFACE_TYPE InterfaceType, - IN ULONG BusNumber) -{ - return NULL; -} - -VOID -FASTCALL -xHalReferenceHandler(IN PBUS_HANDLER BusHandler) -{ - /* Nothing */ - return; -} - -NTSTATUS -NTAPI -xHalInitPnpDriver(VOID) -{ - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalInitPowerManagement(IN PPM_DISPATCH_TABLE PmDriverDispatchTable, - OUT PPM_DISPATCH_TABLE *PmHalDispatchTable) -{ - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalStartMirroring(VOID) -{ - PAGED_CODE(); - - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalEndMirroring(IN ULONG PassNumber) -{ - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalMirrorPhysicalMemory(IN PHYSICAL_ADDRESS PhysicalAddress, - IN LARGE_INTEGER NumberOfBytes) -{ - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalQueryBusSlots(IN PBUS_HANDLER BusHandler, - IN ULONG BufferSize, - OUT PULONG SlotNumbers, - OUT PULONG ReturnedLength) -{ - PAGED_CODE(); - - return STATUS_NOT_SUPPORTED; -} - -NTSTATUS -NTAPI -xHalSetSystemInformation(IN HAL_SET_INFORMATION_CLASS InformationClass, - IN ULONG BufferSize, - IN PVOID Buffer) -{ - PAGED_CODE(); - - return STATUS_INVALID_LEVEL; -} - -NTSTATUS -NTAPI -xHalQuerySystemInformation(IN HAL_QUERY_INFORMATION_CLASS InformationClass, - IN ULONG BufferSize, - IN OUT PVOID Buffer, - OUT PULONG ReturnedLength) -{ - PAGED_CODE(); - - return STATUS_INVALID_LEVEL; -} - -VOID -NTAPI -xHalLocateHiberRanges(IN PVOID MemoryMap) -{ - /* Nothing */ - return; -} - -NTSTATUS -NTAPI -xHalRegisterBusHandler(IN INTERFACE_TYPE InterfaceType, - IN BUS_DATA_TYPE ConfigSpace, - IN ULONG BusNumber, - IN INTERFACE_TYPE ParentInterfaceType, - IN ULONG ParentBusNumber, - IN ULONG ContextSize, - IN PINSTALL_BUS_HANDLER InstallCallback, - OUT PBUS_HANDLER *BusHandler) -{ - PAGED_CODE(); - - return STATUS_NOT_SUPPORTED; -} - -VOID -NTAPI -xHalSetWakeAlarm(IN ULONGLONG AlartTime, - IN PTIME_FIELDS TimeFields) -{ - /* Nothing */ - return; -} - -BOOLEAN -NTAPI -xHalTranslateBusAddress(IN INTERFACE_TYPE InterfaceType, - IN ULONG BusNumber, - IN PHYSICAL_ADDRESS BusAddress, - IN OUT PULONG AddressSpace, - OUT PPHYSICAL_ADDRESS TranslatedAddress) -{ - KeBugCheckEx(HAL_INITIALIZATION_FAILED, 0, 0, 0, 0); - - return FALSE; -} - -NTSTATUS -NTAPI -xHalAllocateMapRegisters(IN PADAPTER_OBJECT AdapterObject, - IN ULONG Unknown, - IN ULONG Unknown2, - PMAP_REGISTER_ENTRY Registers) -{ - PAGED_CODE(); - - return STATUS_NOT_IMPLEMENTED; -} - -NTSTATUS -NTAPI -xKdSetupPciDeviceForDebugging(IN PVOID LoaderBlock OPTIONAL, - IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) -{ - return STATUS_NOT_IMPLEMENTED; -} - -NTSTATUS -NTAPI -xKdReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) -{ - return STATUS_NOT_IMPLEMENTED; -} - -PVOID -NTAPI -xKdGetAcpiTablePhase(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock, - IN ULONG Signature) -{ - return NULL; -} - -PVOID -NTAPI -MatchAll(IN PHYSICAL_ADDRESS PhysicalAddress, - IN ULONG NumberPages, - IN BOOLEAN FlushCurrentTLB) -{ - return NULL; -} - -VOID -NTAPI -xKdUnmapVirtualAddress(IN PVOID VirtualAddress, - IN ULONG NumberPages, - IN BOOLEAN FlushCurrentTLB) -{ - /* Nothing */ - return; -} Modified: trunk/reactos/ntoskrnl/include/internal/hal.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
============================================================================== --- trunk/reactos/ntoskrnl/include/internal/hal.h [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/include/internal/hal.h [iso-8859-1] Fri Mar 11 15:17:59 2011 @@ -4,7 +4,6 @@ * FILE: ntoskrnl/include/hal.h * PURPOSE: Internal header for the I/O HAL Functions (Fstub) * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) - * Pierre Schweitzer (pierre.schweitzer(a)reactos.org) */ #pragma once @@ -74,167 +73,13 @@ NTSTATUS NTAPI -xHalGetInterruptTranslator( - IN INTERFACE_TYPE ParentInterfaceType, - IN ULONG ParentBusNumber, - IN INTERFACE_TYPE BridgeInterfaceType, - IN USHORT Size, - IN USHORT Version, - OUT PTRANSLATOR_INTERFACE Translator, - OUT PULONG BridgeBusNumber -); - -PBUS_HANDLER -FASTCALL -xHalHandlerForBus( - IN INTERFACE_TYPE InterfaceType, - IN ULONG BusNumber -); - -VOID -FASTCALL -xHalReferenceHandler( - IN PBUS_HANDLER BusHandler -); - -NTSTATUS -NTAPI -xHalInitPnpDriver( - VOID -); - -NTSTATUS -NTAPI -xHalInitPowerManagement( - IN PPM_DISPATCH_TABLE PmDriverDispatchTable, - OUT PPM_DISPATCH_TABLE *PmHalDispatchTable -); - -NTSTATUS -NTAPI -xHalStartMirroring( - VOID -); - -NTSTATUS -NTAPI -xHalEndMirroring( - IN ULONG PassNumber -); - -NTSTATUS -NTAPI -xHalMirrorPhysicalMemory( - IN PHYSICAL_ADDRESS PhysicalAddress, - IN LARGE_INTEGER NumberOfBytes -); - -NTSTATUS -NTAPI -xHalQueryBusSlots( - IN PBUS_HANDLER BusHandler, - IN ULONG BufferSize, - OUT PULONG SlotNumbers, - OUT PULONG ReturnedLength -); - -NTSTATUS -NTAPI -xHalSetSystemInformation( - IN HAL_SET_INFORMATION_CLASS InformationClass, - IN ULONG BufferSize, - IN PVOID Buffer -); - -NTSTATUS -NTAPI -xHalQuerySystemInformation( - IN HAL_QUERY_INFORMATION_CLASS InformationClass, - IN ULONG BufferSize, - IN OUT PVOID Buffer, - OUT PULONG ReturnedLength -); - -VOID -NTAPI -xHalLocateHiberRanges( - IN PVOID MemoryMap -); - -NTSTATUS -NTAPI -xHalRegisterBusHandler( - IN INTERFACE_TYPE InterfaceType, - IN BUS_DATA_TYPE ConfigSpace, - IN ULONG BusNumber, - IN INTERFACE_TYPE ParentInterfaceType, - IN ULONG ParentBusNumber, - IN ULONG ContextSize, - IN PINSTALL_BUS_HANDLER InstallCallback, - OUT PBUS_HANDLER *BusHandler -); - -VOID -NTAPI -xHalSetWakeAlarm( - IN ULONGLONG AlartTime, - IN PTIME_FIELDS TimeFields -); - -BOOLEAN -NTAPI -xHalTranslateBusAddress( - IN INTERFACE_TYPE InterfaceType, - IN ULONG BusNumber, - IN PHYSICAL_ADDRESS BusAddress, - IN OUT PULONG AddressSpace, - OUT PPHYSICAL_ADDRESS TranslatedAddress -); - -NTSTATUS -NTAPI -xHalAllocateMapRegisters( - IN PADAPTER_OBJECT AdapterObject, - IN ULONG Unknown, - IN ULONG Unknown2, - PMAP_REGISTER_ENTRY Registers -); - -NTSTATUS -NTAPI -xKdSetupPciDeviceForDebugging( - IN PVOID LoaderBlock OPTIONAL, - IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice -); - -NTSTATUS -NTAPI -xKdReleasePciDeviceForDebugging( - IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice -); - -PVOID -NTAPI -xKdGetAcpiTablePhase( - IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock, - IN ULONG Signature -); - -PVOID -NTAPI -MatchAll( - IN PHYSICAL_ADDRESS PhysicalAddress, - IN ULONG NumberPages, - IN BOOLEAN FlushCurrentTLB -); - -VOID -NTAPI -xKdUnmapVirtualAddress( - IN PVOID VirtualAddress, - IN ULONG NumberPages, - IN BOOLEAN FlushCurrentTLB -); +xHalGetInterruptTranslator(IN INTERFACE_TYPE ParentInterfaceType, + IN ULONG ParentBusNumber, + IN INTERFACE_TYPE BridgeInterfaceType, + IN USHORT Size, + IN USHORT Version, + OUT PTRANSLATOR_INTERFACE Translator, + OUT PULONG BridgeBusNumber); //
13 years, 9 months
1
0
0
0
← Newer
1
...
17
18
19
20
21
22
23
...
28
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
Results per page:
10
25
50
100
200