- Never trust MaximumLength passed from usermode when copying a unicode string (fixes a wide amount of crashes, tested with CdrLabel 4.1).
svn path=/trunk/; revision=31010
- Begin superseding the WINDOW_OBJECT structure by WINDOW which is located on the desktop heap
- Implement GetClientRect() and GetWindowRect() to read the information from the desktop heap
svn path=/trunk/; revision=30467
- KeRosDumpStackFrames is fixed so that if the EIP can't be found in a module list, it's still displayed (just without the module name). Previously the EIP would not be shown, resulting in code running on the heap/stack/somewhere else not being shown as part of the trace.
svn path=/trunk/; revision=29332
- Register the user32 base address with win32k. Technically this is not really neccessary because user32's base address is fixed
svn path=/trunk/; revision=27935
fixing some spi that was retutring using wrong param in retutin and setting spi
-------------------------------------------------------------------------------
1. I did add formating of the code and two debug msg. so it getting easy debug
waxdragon crashs
svn path=/trunk/; revision=27654
-------------------------------------------------------
This is a small hack, instead send invaild data we are sending
a hardcode value for few unimplement spi, This solv some problem
with firefox, like icon is not longer gray out, frist time u start
firefox, it also fix some other werid problem,
svn path=/trunk/; revision=27620
revert 27521, bugfix the regress in second boot with this patch
-----------------------------------------------------------------
I GreatLord hope it is no more regress, if any one found any werid
with this change, please let me known direcly.
svn path=/trunk/; revision=27531
Implement so spi_ msg works now with swamp mouse buttun, but it seam our msg quare does not support it yet or must
we send a msg from spi msg we change the mouse buttun to notify the program. either way it is now partly supported
by his patch
svn path=/trunk/; revision=27484
adding almost all spi msg can be resive/send to win32k and
some are stub and will not work yet, but win32k will accpect them
svn path=/trunk/; revision=27465
implement pointers
MouseSpeed, CursorAccelerationInfo.FirstThreshold ,
CursorAccelerationInfo.SecondThreshold, CursorAccelerationInfo.Acceleration,
MouseHoverTime, MouseHoverWidth, MouseHoverHeight
for SPI_SETMOUSEHOVERTIME, SPI_SETMOUSEHOVERWIDTH, SPI_SETMOUSEHOVERHEIGHT, SPI_SETMOUSE, SPI_SETMOUSESPEED.
WARING :
Some of them are not 100% support in win32k for they are need be fill in from the mouse drv and
send them to the mouse drv as well, this part are not done yet.
svn path=/trunk/; revision=27454
- Put volatile statements in EX_RUNDOWN_REF, IRP, DEVICE_OBJECT, ERESOURCE, FILE_OBJECT, IO_REMOVE_LOCK, WORK_QUEUE_ITEM where required (thanks to Microsoft's changes in the WDK to mark the fields properly).
- Update FILE_OBJECT definition.
- Add some asserts to some I/O functions.
- Add stub support for File Objects created by XP+ Drivers which have File Object Extensions.
- Add some fixes to IopDeleteFile, including proper reference counting for the DO and VPB, as well as cleanup when the file is closed without a handle.
- Fix a bug in IopSecurityFile.
- Queue and unqueue IRPs in all I/O functions.
- Fully support IRP cancellation now.
- Fix critical bugs in NtDeviceIoControlFile and NtDeviceFsControlFile which were causing double queueing of IRPs and freeing of invalid memory, as well as invalid paramter checking for user-mode buffers.
- Add exhaustive validation checks to IoCreateFile, add more failure cases, and validate the EA buffer. Also support IO_ATTACH_DEVICE_API flag.
- Implement IoCreateStreamFileObjectEx and IoCreateStreamFileObjectLite and fix several bugs in the original implementation of IoCreateStreamFileObject.
- Fix a bug in RtlRaiseException.
- Update Io*ShareAccess routines to support XP+ style semantics related to special File Object flags which disable their use.
- Add validation to all Query/Set routines so that information clasess, lengths, buffers and alignment are properly checked.
- Also add an array for the proper acess rights that each query/set operation requires.
- Check backup/restore privileges during I/O File operations.
- Check traverse access during I/O File Operations.
- Check access privileges to the device during I/O file operations.
- Rename IopReferenceDeviceObject and also verify if an exclusive DO is trying to be invalidly opened.
- Support various extra security checks during I/O File/Device Parse Routine.
- Fix a bug during IopCleanupIrp so that we don't dereference the File OBject if this was a create operation.
- Fix some bogus asserts in IofCompleteRequest, and save the IRP Flags before signalling it's event, since the driver might've freed it behind our back.
- Fix a large bug in ObInsertObject which affected the insert of unnamed objects with forced security options (Such as process/threads).
- Fix the creation of the Process/Thread/Job Obejct Types to that security information is forced.
- Remove "Fix PS!!!" messages since the bug is now fixed and these objects now get proper security descriptors.
- Fix another bug in ObInsertObjet which wasn't properly validating user-mode objects and always assumed kernel mode.
- Silence multiple trace/checkpoint messages that have accumulated throughout time for various debugging purposes.
svn path=/trunk/; revision=25118
- HAL DMA enhancements by Filip Navara.
- CSRSS Console enhancements by Filip Navara.
- Win32k Primitive Queue/Input/Painting/Focus enhancements by Filip Navara.
- Other misc win32k/CSR bug fixes by Filip Navara.
- The new bootvid code has some bugs, but try out a GUI Boot!
svn path=/trunk/; revision=24464
The bug I experis before was reletate to ntoslnrl and is complete gone. I have now reboot and boot around 10-20 times
and run same program. But we see all unicode -> ansi problem with this change if u select russan in reactos
svn path=/trunk/; revision=23749
1. Bitstream Vera Sans to MS Sans Serif
2. Bitstream Vera Sans Mono to Courier New
This fixed some problem that bug 1191 mentor but not all.
I tested this change in ReactOS
1. using BootCD install whole process and run some ros own program
and tested cmd. No problem was found with this change.
svn path=/trunk/; revision=23614
- Reformat and annotate parts of process.c
- Remove PsGetWin32Process, PsGetWin32Thread and implement/export the real functions PsGetCurrentProcessWin32Process, PsGetCurrentThreadWin32Thread, change win32k to use them.
- Initailize and use process rundown.
- Set corrent GrantedAccess.
- Remove an extra incorrect reference we were adding to processes.
- Implement PsIsProcessBeingDebugged.
- Make the same changes to NtOpenProcess that we did previously to NtOpenThread.
svn path=/trunk/; revision=23192
2. Fixing so the screensaver do not restart it self.
Alesky here is the bugfix I promies, it will not longer see alot start screen msg.
One bug remains before the reg key will be adding as defualt for matrix.scr so it
can run from livecd as well
svn path=/trunk/; revision=23047
1. Time value can be changes use SPI_SETSCREENSAVETIMEOUT to set the new value, current insate value are set to 30sec
2. SPI_GETSCREENSAVETIMEOUT Get the screen saver timeout value.
3. Dectect if screen saver is running with SPI_GETSCREENSAVERRUNNING
4. Set the state of screen saver with SPI_SETSCREENSAVERRUNNING <- this is internal api see msdn
Implement for mouse
1. SPI_GETWHEELSCROLLLINES I am but unsure if win32k need more changes it seam like it is only a counter that should be set/get a value and user apps take care of the rest. Implement it for jimtabor did request it.
2. SPI_GETWHEELSCROLLCHARS I am but unsure if win32k need more changes it seam like it is only a counter that should be set/get a value and user apps take care of the rest.
svn path=/trunk/; revision=22985