ChangeLog-0.3.6

This is the changelog for ReactOS™ version 0.3.6 (released 6 August, 2008), an open-source operating system designed to be binary executable- and device driver-compatible with Microsoft™ Windows NT™ and subsequent Microsoft operating systems such as Windows 2000™ and Windows XP™. ReactOS is written by the ReactOS development team, and the last previous version of ReactOS was version 0.3.5 (released 30 June, 2008).

KD

KE

Fix a problem with normal and special APCs being inserted in the wrong order, spotted by Yury Sidorov. Now Borland Turbo Debugger should be able to debug applications, also it can fix hangs in other applications (Aleksey Bragin, Yury Sidorov, bug #3426)

MM

Invalid parameter error is returned if requested memory area is located above USER_SHARED_DATA address (0x7FFE0000) (WinXP compatible).

Access violation error is returned if existing memory area found on requested address and this area have uninitialized region list.

MiGetLastKernelAddress was totally broken on x86 and always returned the highest available physical page, thus the PFN database always end up at the address 0x80000000 and higher (just before the kernel). And when PFN database's size was bigger than usual (e.g. 1Gb of RAM and more), the PFN database zeroed out the kernel. This logic was introduced by 32640 commit. Fix it. (Aleksey Bragin)

Change kernel address space from a static structure to a pointer into the idle process' system address space, fixing an issue where the kernel address space would become associated with no processes at all (ReactOS Portable Systems Group)

Call RtlRaiseStatus in RtlRaiseException, if something went wrong (Yury Sidorov)

Speed-up user mode exception handling by calling RtlDispatchException() first if there is no active user mode debugger. This avoids switches to kernel mode if exception can be handled by SEH (Yury Sidorov)

Implement RtlSetUserValueHeap, RtlSetUserFlagsHeap, RtlGetUserInfoHeap functions. It is quick implementation and it works. It fixes "Out of memory" error in all InnoSetup based installations. A lot of software can be at least installed in ReactOS now. Also it fixes Delphi applications which use TMemoryStream class. (Yury Sidorov)

Optimize RtlTimeFieldsToTime so it doesn't have to loop 400 times (Jeffrey Morlan)

NDIS

BOOTVID

Fix a problem in VgaIsPresent: Content of the Address Register goes to the Data Register, and vice versa. It also writes content of the Map Select Register (which is number 4) into the Bit Mask Register (number 8) (Dmitry Gorbachev, bug #2125)

USETUP

Remove all translations for the "Paged Memory", "Nonpaged Memory" and "Free Memory" progress bars.This is debug stuff, which should have never been translated. As the translated strings are also sometimes longer than the english ones, they led to unnecessary problems like overlapping text. (Colin Finck)