- Do not store the PDEVOBJ and a fake name in MONITOR struct. Use MONITOR.HDEV instead (which is an opaque pointer to a PDEVOBJ)
svn path=/trunk/; revision=55755
- "All this file is a big hack and should be removed one day…" - Today is that day! setup.c is no more!
[TXTSETUP.SIF]
- Move keyboard drivers to the Keyboard.Load section
[USETUP]
- Add a small keyboard class installation hack
- USB keyboards now load during 1st stage
svn path=/trunk/; revision=55750
- Create the DeviceClasses key necessary for device interfaces to be registered successfully in 1st stage
- This may not be the correct place to do this so anyone is free to move it
svn path=/trunk/; revision=55747
- When releasing a low or full speed device, set the EHCI_PRT_RELEASEOWNERSHIP bit with the current port status so that any change bits are acknowledged
- Fixes detecting new devices after a companion controller handoff
svn path=/trunk/; revision=55742
[NTOSKRNL]: If you're going to fake success when doing access checks, also grant the rights that would normally be refused, for consistency's sake. Should fix a bunch of the kernel32:synch tests (which have nothing to do with synch...).
svn path=/trunk/; revision=55737
[NTOSKRNL]: The "Write" bit in the x86 Error Code is not bit 1, it is bit 2. Fix all the GPF handlers to check for bit 2 instead when determining if an exception was due to read or write. Fixes Winetests.
I'll say it nicely this time for Timo: when you rewrite ASM, do it carefully :)
svn path=/trunk/; revision=55735
[NTDLL/RTL]: Fix RtlIpv4AddressToStringA and RtlIpv4AddressToStringW to work like in Windows (and crash with a NULL buffer).
svn path=/trunk/; revision=55729
- remove assertions from the process callout checking that ppiCurrent->rpdeskStartup and ppiCurrent->hdeskStartup are valid. This can happen in case we fail to open the initial desktop or window station
svn path=/trunk/; revision=55726
- Try to fix reset bugs in my code and remove hacks
- Don't clear extra bits when acknowledging a port connect status change
[USBOHCI]
- Code cleanup
- No functional change
svn path=/trunk/; revision=55725
- Fix a crash in KiSystemCall that was caused because PsConvertToGuiThread may have switched to a large kernel stack, but still returned with failure because win32k did not succeed. To fix it reload the trap frame after the call before checking for success.
svn path=/trunk/; revision=55724
[CSRSRV]: Add special handling for certain messages (similar to how "Reply" is used in CSRSRV2) so that we don't keep replying to the wrong thead. For example, during an ExitProcess, special handling is needed at the end of the loop.
[CSRSRV]: Remove the last few remaining legacy process management function and use the correct CsrLock/Unlock APIs instead. No longer leak references for every process like crazy. Fully manage proc/thread/session reference counts now.
At this point it looks like there might just be one issue left before this thing works right (minus potential regressions due to missed hacks).
svn path=/trunk/; revision=55718