Difference between revisions of "Community Changelog-0.4.15"

From ReactOS Wiki
Jump to: navigation, search
(kernel32: Implemented One-Time initialization API and exported for NT6 build)
(Progressed up to year 2022)
Line 37: Line 37:
 
* IO: Fixed a stack overflow. (Thomas Faber)
 
* IO: Fixed a stack overflow. (Thomas Faber)
 
* IO: Fixed a number of bugs causing filesystem corruption. (Jerome Gardou)
 
* IO: Fixed a number of bugs causing filesystem corruption. (Jerome Gardou)
* IO: Misc bug fixes. (Hermes Belusca-Maito)
+
* IO: Misc bug fixes. (Hermes Belusca-Maito, Herve Poussineau)
 
* IO: Fixed a bug causing BSoD when loading audio drivers from Windows XP/Server 2003. (Oleg Dubinskiy)
 
* IO: Fixed a bug causing BSoD when loading audio drivers from Windows XP/Server 2003. (Oleg Dubinskiy)
 +
* IO: Create non volatile registry keys for root devices (as for other devices). (Herve Poussineau)
 +
* IO: Use a guarded region in IopQueueIrpToThread. (Thomas Faber)
 
* IO/PNP: Massive work for NT5 storage stack support (enabling proper device hot-plugging and unplugging) and USB device support, including USB boot: (Pierre Schweitzer, Victor Perevertkin)
 
* IO/PNP: Massive work for NT5 storage stack support (enabling proper device hot-plugging and unplugging) and USB device support, including USB boot: (Pierre Schweitzer, Victor Perevertkin)
 
** IO: Properly check the Ft volumes. This fixes regression that Unix drives are not assigned a drive letter.
 
** IO: Properly check the Ft volumes. This fixes regression that Unix drives are not assigned a drive letter.
Line 58: Line 60:
 
* PNP: Initialize DeviceDesc and LocationInformation registry fields for manually reported devices, as it is required by the newdev.dll for installing drivers from INF files. This fixes a number of unrecognized devices after PNP works. (Victor Perevertkin)
 
* PNP: Initialize DeviceDesc and LocationInformation registry fields for manually reported devices, as it is required by the newdev.dll for installing drivers from INF files. This fixes a number of unrecognized devices after PNP works. (Victor Perevertkin)
 
* PNP: Do not overwrite existing DeviceDesc values. (Eric Kohl)
 
* PNP: Do not overwrite existing DeviceDesc values. (Eric Kohl)
* PNP: Fixed resource conflict detection. (Victor Perevertkin)  
+
* PNP: Fixed resource conflict detection. This will prevent loading vgamp.sys for a display adapter if another driver is already loaded. (Victor Perevertkin, Herve Poussineau)
 +
* PNP: Release resources when device is removed. ''This is a hack.'' (Herve Poussineau)
 +
* PNP: Set devices as reported Instance key and Control key of legacy devices at report time. (Herve Poussineau)
 +
* PNP: Let pnproot only report already detected devices. This prevents new zombie devices appearing on each reboot. (Herve Poussineau)
 
* EX: Use RtlCutoverTimeToSystemTime to determine the current time zone ID. This fixes some time zone adjustment problems. (Eric Kohl)
 
* EX: Use RtlCutoverTimeToSystemTime to determine the current time zone ID. This fixes some time zone adjustment problems. (Eric Kohl)
 
* FSRTL: Fixed memory corruption when pruning tunnel cache. (Jerome Gardou)
 
* FSRTL: Fixed memory corruption when pruning tunnel cache. (Jerome Gardou)
Line 90: Line 95:
 
* FreeLoader: Minor speed fixes and font change for PC-98 port. (Stanislav Motylkov)
 
* FreeLoader: Minor speed fixes and font change for PC-98 port. (Stanislav Motylkov)
 
* FreeLoader: Various minor fixes. (Hermes Belusca-Maito)
 
* FreeLoader: Various minor fixes. (Hermes Belusca-Maito)
 +
* FreeLoader: Added/fixed heap allocation failure handling. (Serge Gautherie)
  
 
'''Setup:'''
 
'''Setup:'''
Line 112: Line 118:
 
* win32ss/ntgdi: Fixed leaking of bitmaps while testing INFO DC's. (James Tabor)
 
* win32ss/ntgdi: Fixed leaking of bitmaps while testing INFO DC's. (James Tabor)
 
* win32ss/ntgdi: Fixed brush attribute transfer. (James Tabor)
 
* win32ss/ntgdi: Fixed brush attribute transfer. (James Tabor)
 +
* win32ss/ntgdi: Support the wide pen. (Katayama Hirofumi MZ)
 +
* win32ss/ntgdi: Strictly check pen style. (Katayama Hirofumi MZ)
 
* win32ss/eng: Fixed a locking bug causing random crashes with NVidia drivers older than 181.22. (Jerome Gardou)
 
* win32ss/eng: Fixed a locking bug causing random crashes with NVidia drivers older than 181.22. (Jerome Gardou)
 
* win32ss/eng: Fixed detection of multiple display devices on VirtualBox. (Timo Kreuzer)
 
* win32ss/eng: Fixed detection of multiple display devices on VirtualBox. (Timo Kreuzer)
 +
* win32ss/eng: Search for the correct display name when updating graphics devices list. (Oleg Dubinskiy)
 +
* win32ss/eng: Mark created bitmaps as API bitmaps. This allows Windows XP/2003 DirectDraw stack (ddraw.dll & dxg.sys) to properly work in ReactOS (in software emulation mode), even on real hardware. (Oleg Dubinskiy)
 
* win32ss/user: Fixed a bug affecting Spotify installer. (Katayama Hirofumi MZ)
 
* win32ss/user: Fixed a bug affecting Spotify installer. (Katayama Hirofumi MZ)
 
* win32ss/user: Fixed potential use after free when painting child windows. (Jerome Gardou)
 
* win32ss/user: Fixed potential use after free when painting child windows. (Jerome Gardou)
 
* win32ss/ntuser: Allocate a buffer for a classname that is too long. This fixes .NET WPF applications not starting. (Mark Jansen)
 
* win32ss/ntuser: Allocate a buffer for a classname that is too long. This fixes .NET WPF applications not starting. (Mark Jansen)
 
* win32ss/ntuser: Use strict thread and desktop verifying. This fixes a crash caused by Process Hacker. (James Tabor)
 
* win32ss/ntuser: Use strict thread and desktop verifying. This fixes a crash caused by Process Hacker. (James Tabor)
* win32ss/ntuser: Work for supporting Japanese input. (Katayama Hirofumi MZ)
+
* win32ss/ntuser: Work for supporting Japanese input by implementing new functions. (Katayama Hirofumi MZ)
 
* win32ss/ntuser: Fixed shell hooks. (Katayama Hirofumi MZ)
 
* win32ss/ntuser: Fixed shell hooks. (Katayama Hirofumi MZ)
 
* win32ss/ntuser: Fixed gradient caption bars with low color depth. (Dmitry Borisov)
 
* win32ss/ntuser: Fixed gradient caption bars with low color depth. (Dmitry Borisov)
Line 126: Line 136:
 
* win32ss/ntuser: In debug builds, enable free & tail checking when creating heaps. This catches bugs. (Jerome Gardou)
 
* win32ss/ntuser: In debug builds, enable free & tail checking when creating heaps. This catches bugs. (Jerome Gardou)
 
* win32ss/ntuser: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
 
* win32ss/ntuser: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
* win32ss/printing: Massive fixups and implementations. Implemented APIs in winspool and forwarded them to spoolss and localspl. (James Tabor)
+
* win32ss/ntuser: Make sure to hold user global lock before playing with desktops. This fixes crash with Mongoose web server and IguanaCMS. (Hermes Belusca-Maito)
 +
* win32ss/ntuser: Fixed where linking newly created window is done. This fixes exception when loading any app in Dependency Walker. (I_Kill_Bugs, Katayama Hirofumi MZ)
 +
* win32ss/ntuser: Implement HSHELL_RUDEAPPACTIVATE notification. (Katayama Hirofumi MZ)
 +
* win32ss/ntuser: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
 +
* win32ss/ntuser: Fixed bug causing task buttons in taskbar not to work correctly sometimes. (Katayama Hirofumi MZ)
 +
* win32ss/ntuser: Do not remove message from the Message Queue if not ours. This fixes 3D Text ScreenSaver freezing system. (I_Kill_Bugs, Doug Lyons)
 +
* win32ss/ntuser: Use call procedure handle if available. This fixes Zeus Lite crashing. (I_Kill_Bugs, Katayama Hirofumi MZ)
 +
* win32ss/printing: Massiveed fixups and implementations. Implemented APIs in winspool and forwarded them to spoolss and localspl. (James Tabor)
 
* win32ss: Misc bug fixes. (Jerome Gardou)
 
* win32ss: Misc bug fixes. (Jerome Gardou)
 
* reactx/ntddraw: Fixed a bug causing DirectX 1-7 games not starting. (Oleg Dubinskiy)
 
* reactx/ntddraw: Fixed a bug causing DirectX 1-7 games not starting. (Oleg Dubinskiy)
 +
* reactx/ntddraw: Improved DxEngGetDCState type 2 implementation. This allows to properly enable and use DirectDraw and Direct3D hardware acceleration with MS DirectX components. (Oleg Dubinskiy)
 
* gdi32: Fixed bug preventing display of characters in the CD key box of Starcraft, Visual Basic 5 and Visual Basic 6 installers. (Doug Lyons)
 
* gdi32: Fixed bug preventing display of characters in the CD key box of Starcraft, Visual Basic 5 and Visual Basic 6 installers. (Doug Lyons)
 
* gdi32: Fixed a double call. (Doug Lyons)
 
* gdi32: Fixed a double call. (Doug Lyons)
Line 137: Line 155:
 
* gdi32: Fixed metafile packing recursion issues. (James Tabor)
 
* gdi32: Fixed metafile packing recursion issues. (James Tabor)
 
* gdi32: Updated metafile code from Wine. (James Tabor)
 
* gdi32: Updated metafile code from Wine. (James Tabor)
 +
* gdi32: Fixed rectangle flag issues. This fixes opaque text rendering. (James Tabor)
 
* user32: Fixed display corruption issues when scrolling in Change Icon dialog and a number of cases. (Jose Carlos Jesus)
 
* user32: Fixed display corruption issues when scrolling in Change Icon dialog and a number of cases. (Jose Carlos Jesus)
 
* user32: Implement and load IMM table. (Katayama Hirofumi MZ)
 
* user32: Implement and load IMM table. (Katayama Hirofumi MZ)
 
* user32: Properly save EBX in the wndproc wrapper. (Jerome Gardou)
 
* user32: Properly save EBX in the wndproc wrapper. (Jerome Gardou)
 
* user32: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
 
* user32: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
 +
* user32: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
 +
* gdiplus: Added support for EMF/WMF bitmap formats. (Katayama Hirofumi MZ)
 
* ntprint: Imported the DLL for printing application utility support. (James Tabor)
 
* ntprint: Imported the DLL for printing application utility support. (James Tabor)
 
* winlogon: Added hidden logon/logoff SFC notification. (Eric Kohl)
 
* winlogon: Added hidden logon/logoff SFC notification. (Eric Kohl)
Line 150: Line 171:
 
* csrsrv: Fixed locking logic when destroying threads & processes. (Jerome Gardou)
 
* csrsrv: Fixed locking logic when destroying threads & processes. (Jerome Gardou)
 
* userinit: Added unattend.inf functionality to LiveCD. (Mark Jansen)
 
* userinit: Added unattend.inf functionality to LiveCD. (Mark Jansen)
* imm32: Massive work for supporting Japanese input. (Katayama Hirofumi MZ)
+
* imm32: Massive work for supporting Japanese input. (Katayama Hirofumi MZ) '''More explanation needed!'''
 
* imm32: Fixed crash when loading MS user32.dll. (Oleg Dubinskiy)
 
* imm32: Fixed crash when loading MS user32.dll. (Oleg Dubinskiy)
 +
* ntvdm: Improved DOS file search implementation. (Hermes Belusca-Maito)
 +
* ntvdm: Minor improvements. (Hermes Belusca-Maito)
  
 
'''Drivers:'''
 
'''Drivers:'''
Line 165: Line 188:
 
* scsiport: Added the enumerator (SCSI) to the compatible IDs and fixed other hardware IDs. (Eric Kohl)
 
* scsiport: Added the enumerator (SCSI) to the compatible IDs and fixed other hardware IDs. (Eric Kohl)
 
* scsiport: Append the missing "SCSI <device type> Device" string to the device description. (Eric Kohl)
 
* scsiport: Append the missing "SCSI <device type> Device" string to the device description. (Eric Kohl)
 +
* scsiport: Ignore LUNs not supported by the adapter. This fixes single disk being recognized as 8 separate disks on VirtIO SCSI controller. (Herve Poussineau)
 
* partmgr: Register a disk interface for disk PDO. With fixes in setupapi and umpnpmgr, Rufus correctly displays device info. (Victor Perevertkin)
 
* partmgr: Register a disk interface for disk PDO. With fixes in setupapi and umpnpmgr, Rufus correctly displays device info. (Victor Perevertkin)
 
* partmgr: Removed hacks as PnP manager should not send bogus IRPs anymore. (Victor Perevertkin)
 
* partmgr: Removed hacks as PnP manager should not send bogus IRPs anymore. (Victor Perevertkin)
 
* partmgr: Volume devices do not have compatible IDs and their instance IDs are not unique. (Eric Kohl)
 
* partmgr: Volume devices do not have compatible IDs and their instance IDs are not unique. (Eric Kohl)
 +
* partmgr: Mark partitions as removable if device is removable. This fixes USB flash drives are being recognized as "Local Disk". (Herve Poussineau)
 
* fs_rec: Register a recognizer for FAT filesystem on CD-ROMs. This handles the \FatCdrom device, supported by MS FastFAT. (Hermes Belusca-Maito)
 
* fs_rec: Register a recognizer for FAT filesystem on CD-ROMs. This handles the \FatCdrom device, supported by MS FastFAT. (Hermes Belusca-Maito)
 
* fastfat_new: Finally replaced old fastfat driver thanks to Mm/Cc works. Along with massive PnP works, this is the final step for USB boot and proper device hot-plugging/unplugging support. (Jerome Gardou)
 
* fastfat_new: Finally replaced old fastfat driver thanks to Mm/Cc works. Along with massive PnP works, this is the final step for USB boot and proper device hot-plugging/unplugging support. (Jerome Gardou)
Line 178: Line 203:
 
* ffs: Remove the FFS/UFS driver. The upstream driver is not maintained and the file system itself is in a semi-abandoned state. (Victor Perevertkin)
 
* ffs: Remove the FFS/UFS driver. The upstream driver is not maintained and the file system itself is in a semi-abandoned state. (Victor Perevertkin)
 
* i8042prt: Removed IRP stubbing. (Thomas Faber)
 
* i8042prt: Removed IRP stubbing. (Thomas Faber)
 +
* i8042prt: Added Latitude D820 to the hack list. (Scott Maday)
 
* inport: Added driver for bus mouse devices. (Dmitry Borisov)
 
* inport: Added driver for bus mouse devices. (Dmitry Borisov)
 
* kbdclass: Properly stub power IRP handling. (Thomas Faber)
 
* kbdclass: Properly stub power IRP handling. (Thomas Faber)
Line 186: Line 212:
 
* uniata: Emulate SCSI INQUIRY to properly recognize Xbox DVD drives. (Stanislav Motylkov)
 
* uniata: Emulate SCSI INQUIRY to properly recognize Xbox DVD drives. (Stanislav Motylkov)
 
* uniata: Better split of model name between Vendor and Product: Try to split model into vendor and product on a space if possible. This fixes uniata filling some devices incorrectly. (Herve Poussineau)
 
* uniata: Better split of model name between Vendor and Product: Try to split model into vendor and product on a space if possible. This fixes uniata filling some devices incorrectly. (Herve Poussineau)
 +
* uniata: Fixed copy-pasta on 5 Promise device IDs. (Serge Gautherie)
 
* floppy: Make floppy drives letters being handled by the mount manager. (Pierre Schweitzer)
 
* floppy: Make floppy drives letters being handled by the mount manager. (Pierre Schweitzer)
 
* usbccgp: Fixed some bugs found by Driver Verifier. (Thomas Faber)
 
* usbccgp: Fixed some bugs found by Driver Verifier. (Thomas Faber)
 
* usbstor: Enabled USB ATAPI CD-ROM support. (Victor Perevertkin)
 
* usbstor: Enabled USB ATAPI CD-ROM support. (Victor Perevertkin)
 
* usbstor: Minor bug fixes. Removed workarounds for old storage drivers. (Victor Perevertkin)
 
* usbstor: Minor bug fixes. Removed workarounds for old storage drivers. (Victor Perevertkin)
 +
* usbstor: Added device definitions for SFF-8070i (ARMD-style devices). (Stanislav Motylkov)
 
* usbhub: Added a delay hack for USB boot. (Victor Perevertkin)
 
* usbhub: Added a delay hack for USB boot. (Victor Perevertkin)
 
* tcpip: Fixed "Socket is not connected" error when using SUMo/DUMo. (Sylvain Deverre)
 
* tcpip: Fixed "Socket is not connected" error when using SUMo/DUMo. (Sylvain Deverre)
 
* tcpip: Added missing null checks. This fixes BSoD when opening multiple tabs in Firefox. (Thomas Brogan)
 
* tcpip: Added missing null checks. This fixes BSoD when opening multiple tabs in Firefox. (Thomas Brogan)
 +
* e1000: Minor improvements. (Dmitry Borisov)
 
* ne2000: Use the real MAC address instead of a fake one. (Herve Poussineau)
 
* ne2000: Use the real MAC address instead of a fake one. (Herve Poussineau)
 
* acpi: Do not panic if processor brand name does not exist. (Stanislav Motylkov)
 
* acpi: Do not panic if processor brand name does not exist. (Stanislav Motylkov)
 
* isapnp: Enabled the driver with major bug fixes. (Herve Poussineau)
 
* isapnp: Enabled the driver with major bug fixes. (Herve Poussineau)
 
* isapnp: Massive work for the driver being able to detect cards. (Dmitry Borisov)
 
* isapnp: Massive work for the driver being able to detect cards. (Dmitry Borisov)
 +
* isapnp: Enabled support for NEC PC-98 series. (Dmitry Borisov)
 
* pci: Fixed PDO removal. (Herve Poussineau)
 
* pci: Fixed PDO removal. (Herve Poussineau)
 
* pci: Accept a bus number range instead of a single bus number. (Herve Poussineau)
 
* pci: Accept a bus number range instead of a single bus number. (Herve Poussineau)
Line 206: Line 236:
 
* parport: Fixed I/O port length check. This fixes the driver on the Compaq N600c laptop. (Victor Perevertkin)
 
* parport: Fixed I/O port length check. This fixes the driver on the Compaq N600c laptop. (Victor Perevertkin)
 
* vbemp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
 
* vbemp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
 +
* vbemp: Correctly report legacy resources (VGA I/O ports and memory). (Herve Poussineau)
 
* vgamp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
 
* vgamp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
 +
* vgamp: Correctly report legacy resources (VGA I/O ports and memory)
 
* vbe: Enabled driver start in the registry. (Victor Perevertkin)
 
* vbe: Enabled driver start in the registry. (Victor Perevertkin)
 
* vbe: Really fixed VGA EDID bug for QEMU and removed the previous workaround. (Herve Poussineau)
 
* vbe: Really fixed VGA EDID bug for QEMU and removed the previous workaround. (Herve Poussineau)
Line 214: Line 246:
 
* videoprt: Implemented creating secondary display devices. (Timo Kreuzer)
 
* videoprt: Implemented creating secondary display devices. (Timo Kreuzer)
 
* videoprt: Do not attach secondary devices to the device stack. This fixes display on the primary screen. (Timo Kreuzer)
 
* videoprt: Do not attach secondary devices to the device stack. This fixes display on the primary screen. (Timo Kreuzer)
* videoprt: Fixes for registry value issues and key creation. (Timo Kreuzer, Herve Poussineau)
+
* videoprt: Fixes for registry value issues and key creation. (Herve Poussineau)
 +
* videoprt: Fixed handling of legacy VGA resources. With fixes in port drivers of display, garbled display with emulators are now resolved. (Herve Poussineau)
 
* videoprt: Miscellaneous improvements. (Timo Kreuzer)
 
* videoprt: Miscellaneous improvements. (Timo Kreuzer)
 
* bootvid: Added boot video driver for NEC PC-98. (Dmitry Borisov)
 
* bootvid: Added boot video driver for NEC PC-98. (Dmitry Borisov)
Line 230: Line 263:
 
'''Shell:'''
 
'''Shell:'''
  
* Enabled ATL asserts and fixed bugs. (Katayama Hirofumi MZ, Mark Jansen)
+
* Enabled ATL asserts and fixed bugs. Some more ATL progress. (Katayama Hirofumi MZ, Mark Jansen)
 
* Enabled auto-completion and new Browse for Folder dialog in shell components. (Katayama Hirofumi MZ)
 
* Enabled auto-completion and new Browse for Folder dialog in shell components. (Katayama Hirofumi MZ)
 
* explorer: Correct auto-startup behaviour. (Stanislav Motylkov)
 
* explorer: Correct auto-startup behaviour. (Stanislav Motylkov)
Line 236: Line 269:
 
* explorer: Fixed crash when closing PowerPoint 2007. (Katayama Hirofumi MZ)
 
* explorer: Fixed crash when closing PowerPoint 2007. (Katayama Hirofumi MZ)
 
* explorer: Handle RunOnceEx by invoking RunOnceEx in iernonce.dll. (He Yang)
 
* explorer: Handle RunOnceEx by invoking RunOnceEx in iernonce.dll. (He Yang)
 +
* explorer: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
 +
* explorer: Fixed infinite loop with taskbar auto-hide enabled. (Jose Carlos Jesus)
 +
* explorer: Adjust AUTOHIDE size. (Katayama Hirofumi MZ)
 
* shell32: Command 'start C:' now opens drive C. (Katayama Hirofumi MZ)
 
* shell32: Command 'start C:' now opens drive C. (Katayama Hirofumi MZ)
 
* shell32: Enable Del/Delete key to delete the selected folder in "Browse for Folder" dialog. (Katayama Hirofumi MZ)
 
* shell32: Enable Del/Delete key to delete the selected folder in "Browse for Folder" dialog. (Katayama Hirofumi MZ)
Line 266: Line 302:
 
* shell32: Implemented path resolving. (Katayama Hirofumi MZ)
 
* shell32: Implemented path resolving. (Katayama Hirofumi MZ)
 
* shell32: Add fallback for failing shell extension. (Mark Jansen)
 
* shell32: Add fallback for failing shell extension. (Mark Jansen)
* shell32: Don't smartass-renaming on .LNK files. Renaming .LNK files had a bug that the selection won't include the extension-like filename part. (Katayama Hirofumi MZ)
 
 
* shell32: Add missing SS_NOPREFIX to labels in About dialog. (William Kent)
 
* shell32: Add missing SS_NOPREFIX to labels in About dialog. (William Kent)
 +
* shell32: Minor bug fixes to avoid debug spam. (Doug Lyons)
 +
* shell32: Implemented getting attributes from data object. This is required for font installation from fontext. (Mark Jansen)
 +
* shell32: Fixed creating shortcut of a drive by right click drag-and-drop. (Katayama Hirofumi MZ)
 +
* shell32: Show error message if move or copy operation failed. This allows user to know when there is not enough space on the target media, when there is no permissions for the operation, or some other error. (Denis Malikov)
 +
* shell32: Use IDI_SHELL_DOCUMENT for broken non-exe icons. This helps Explorer not to crash with icons. (Katayama Hirofumi MZ)
 +
* shell32: Fixed double-clicking the menu bar in the file browser leaving menu in pressed state. (Jesus Sanz del Rey)
 
* browseui: Make the captions of the explorer bars vertically centered. (Katayama Hirofumi MZ)
 
* browseui: Make the captions of the explorer bars vertically centered. (Katayama Hirofumi MZ)
 
* browseui: Implemented Move To/Copy To buttons. (Katayama Hirofumi MZ)
 
* browseui: Implemented Move To/Copy To buttons. (Katayama Hirofumi MZ)
Line 287: Line 328:
 
* zipfldr: Show error when compression method is not supported. (Stanislav Motylkov)
 
* zipfldr: Show error when compression method is not supported. (Stanislav Motylkov)
 
* fontext: Preparation work for fonts folder implementation. (Katayama Hirofumi MZ)
 
* fontext: Preparation work for fonts folder implementation. (Katayama Hirofumi MZ)
* shellbtrfs: Prevent the compression dropbox from accepting free text. (Mark Harmstone)
+
* fontext: Fixed font installation from there. Dragging font to font folder will now succeed and refresh the font view. (Mark Jansen)
 +
* shellbtrfs: Prevent the compression dropbox from accepting free text. (Mark Harmstone)  
  
 
'''System DLLs:'''
 
'''System DLLs:'''
Line 302: Line 344:
 
* hal: Added HAL for SMP. (Justin Miller, Timo Kreuzer)
 
* hal: Added HAL for SMP. (Justin Miller, Timo Kreuzer)
 
* hal: Hack KeTryToAcquireQueuedSpinlock and KeTryToAcquireQueuedSpinLockRaiseToSynch into a somewhat working implementation. (Jerome Gardou)
 
* hal: Hack KeTryToAcquireQueuedSpinlock and KeTryToAcquireQueuedSpinLockRaiseToSynch into a somewhat working implementation. (Jerome Gardou)
 +
* hal: Stub-implemented scatter/gather DMA operations. (Herve Poussineau)
 +
* hal: Stup-implemented scatter/gather listing size and implemented building list. (Herve Poussineau)
 
* hal/xbox: Fixed clock drift. Added a new rollover table for Original Xbox. This fixes potential timing issues in kernel and drivers. (Yaroslav Kibysh)
 
* hal/xbox: Fixed clock drift. Added a new rollover table for Original Xbox. This fixes potential timing issues in kernel and drivers. (Yaroslav Kibysh)
 
* hal/xbox: Initialize PCI bridge secondary and subordinate bus values. This fixes the recursion when pci.sys attempts to get PCI bridge children devices, which in fact are non-existing. (Stanislav Motylkov)
 
* hal/xbox: Initialize PCI bridge secondary and subordinate bus values. This fixes the recursion when pci.sys attempts to get PCI bridge children devices, which in fact are non-existing. (Stanislav Motylkov)
Line 307: Line 351:
 
* kernel32: Fixed a bug with process priorities. Task Manager now correctly shows priority of a process. (Colin Finck)
 
* kernel32: Fixed a bug with process priorities. Task Manager now correctly shows priority of a process. (Colin Finck)
 
* kernel32: Synced NLS files with Wine 6.7. (Jerome Gardou)
 
* kernel32: Synced NLS files with Wine 6.7. (Jerome Gardou)
 +
* kernel32: Implemented SetFileCompletionNotificationModes. (Oleg Dubinskiy)
 +
* kernel32: Fixed localization problems with GetGeoInfoW, including in NLS. (Stanislav Motylkov)
 
* kernel32: Implemented One-Time initialization API and exported for NT6 build. (Ratin Gao)
 
* kernel32: Implemented One-Time initialization API and exported for NT6 build. (Ratin Gao)
 
* ntdll: Major 64-bit fixes have been merged. '''TO BE EXPANDED''' (Timo Kreuzer)
 
* ntdll: Major 64-bit fixes have been merged. '''TO BE EXPANDED''' (Timo Kreuzer)
Line 322: Line 368:
 
* ntdll/rtl: Fixed functions for multibyte OEM codepages. (Jerome Gardou)
 
* ntdll/rtl: Fixed functions for multibyte OEM codepages. (Jerome Gardou)
 
* ntdll/rtl: Fixed result inspection bugs inside lots of functions. (Jerome Gardou)
 
* ntdll/rtl: Fixed result inspection bugs inside lots of functions. (Jerome Gardou)
* ntdll/crt: Implemented a number of new functions for ARM and various bugfixes have been made. Now ReactOS apps compiled for ARM can run on Windows ARM stable. (Roman Masanin, Mohammed Mediouni, Stanislav Motylkov)
+
* ntdll/crt: Implemented a number of new functions for ARM and various bugfixes have been made. Now ReactOS apps compiled for ARM can run on Windows ARM stable. (Roman Masanin, Mohammed Mediouni, Stanislav Motylkov, Justin Miller)
 
* ntdll/crt: Fixed bug preventing Git running from the command line. (Jerome Gardou)
 
* ntdll/crt: Fixed bug preventing Git running from the command line. (Jerome Gardou)
 
* ntdll/crt: Miscellaneous fixes and improvements. (Jerome Gardou, Timo Kreuzer)
 
* ntdll/crt: Miscellaneous fixes and improvements. (Jerome Gardou, Timo Kreuzer)
 
* ntdll/csr: Fixed a bug. '''MORE EXPLANATION NEEDED!''' (Hermes Belusca-Maito)
 
* ntdll/csr: Fixed a bug. '''MORE EXPLANATION NEEDED!''' (Hermes Belusca-Maito)
 +
* advapi32: Properly implement creating restricted token. (George Bisoc)
 
* d3dx9: Synced with Wine 6.0-rc5. (Jerome Gardou)
 
* d3dx9: Synced with Wine 6.0-rc5. (Jerome Gardou)
 
* dsound: Fixed and improved DirectSoundEnumerateW and DirectSoundCaptureEnumerateW implementations , using the Windows-compatible way to get the device name and pass it to callback. This fixes incorrect detection of DirectSound audio input and output devices, so now a lot of apps are able to detect it correctly, and can play the sound properly. (Oleg Dubinskiy)
 
* dsound: Fixed and improved DirectSoundEnumerateW and DirectSoundCaptureEnumerateW implementations , using the Windows-compatible way to get the device name and pass it to callback. This fixes incorrect detection of DirectSound audio input and output devices, so now a lot of apps are able to detect it correctly, and can play the sound properly. (Oleg Dubinskiy)
Line 337: Line 384:
 
* comctl32: Fixed wrong behavior about Tab key. Pressing Tab key should focus next dialog item. (Katayama Hirofumi MZ)
 
* comctl32: Fixed wrong behavior about Tab key. Pressing Tab key should focus next dialog item. (Katayama Hirofumi MZ)
 
* comctl32: Fixed an incorrect return value for image list removing. (Kyle Katarn)
 
* comctl32: Fixed an incorrect return value for image list removing. (Kyle Katarn)
 +
* comctl32: Fixed bug causing Process Explorer 16.02 to crash on MSVC builds. (Mark Jansen)
 +
* comctl32: Redraw children when the combo box is dropped down. (Gabriel Ivancescu)
 +
* comctl32: Fixed bug causing to be unable to switch between tabs in Task Manager. (Katayama Hirofumi MZ)
 
* comdlg32: Fixed bug that causes glitches in Registry Editor. (Kyle Katarn)
 
* comdlg32: Fixed bug that causes glitches in Registry Editor. (Kyle Katarn)
* comdlg32: Fixed ALT+F4 not closing the application if focus is on treeview component (example Regedit, Event Viewer). (Kyle Katarn)
+
* comdlg32: Fixed ALT+F4 not closing the application if focus is on treeview component (example: Regedit, Event Viewer). (Kyle Katarn)
 
* comdlg32: Added Recent Documents and My Network Places to the places bar in the open file dialog. (Jared Smudde)
 
* comdlg32: Added Recent Documents and My Network Places to the places bar in the open file dialog. (Jared Smudde)
 
* comdlg32: Fixed driver string usage. (James Tabor)
 
* comdlg32: Fixed driver string usage. (James Tabor)
 
* comdlg32: Support shortcut keys on File Open/Save dialogs. (Katayama Hirofumi MZ)
 
* comdlg32: Support shortcut keys on File Open/Save dialogs. (Katayama Hirofumi MZ)
 +
* comdlg32: Fixed ico3 not shown in Print dialog. (Jose Carlos Jesus)
 
* uxtheme: Properly show disabled close button. (Stanislav Motylkov)
 
* uxtheme: Properly show disabled close button. (Stanislav Motylkov)
 
* uxtheme: Fix incorrect part IDs in button class map. (Zhiyi Zhang, Robert Naumann)
 
* uxtheme: Fix incorrect part IDs in button class map. (Zhiyi Zhang, Robert Naumann)
Line 351: Line 402:
 
* appwiz: Fixed crash in 2nd stage setup when aborting Wine Gecko download. (Katayama Hirofumi MZ)
 
* appwiz: Fixed crash in 2nd stage setup when aborting Wine Gecko download. (Katayama Hirofumi MZ)
 
* appwiz: Fixed being unable to enter long text in Create Shortcut Wizard. (Katayama Hirofumi MZ)
 
* appwiz: Fixed being unable to enter long text in Create Shortcut Wizard. (Katayama Hirofumi MZ)
 +
* mshtml: Fixed error when viewing an image from a desktop shortcut. (Katayama Hirofumi MZ)
 
* iernonce: Add RunOnceEx functionality (GSoC 2021 project). (He Yang)
 
* iernonce: Add RunOnceEx functionality (GSoC 2021 project). (He Yang)
 
* iphlpapi: Fixed some test crashes. (Doug Lyons)
 
* iphlpapi: Fixed some test crashes. (Doug Lyons)
Line 359: Line 411:
 
* netcfgx: Create unique network connection names. (Eric Kohl)
 
* netcfgx: Create unique network connection names. (Eric Kohl)
 
* mpr: Added a number of stubs. (Serge Gautherie)
 
* mpr: Added a number of stubs. (Serge Gautherie)
 +
* msv1_0: Work towards supporting network login. (Andreas Maier)
 
* msi: Fixed two taskbar panes showing on Cancel. (Doug Lyons)
 
* msi: Fixed two taskbar panes showing on Cancel. (Doug Lyons)
 
* setupapi: Fixed bug causes D-LINK DWA-123 USB wireless dongle driver installation to fail. (Oleg Dubinskiy)
 
* setupapi: Fixed bug causes D-LINK DWA-123 USB wireless dongle driver installation to fail. (Oleg Dubinskiy)
Line 380: Line 433:
 
* syssetup: Manually start PlugPlay service, and wait for it before continuing. That way, class installers are already registered before installing devices. (Herve Poussineau)
 
* syssetup: Manually start PlugPlay service, and wait for it before continuing. That way, class installers are already registered before installing devices. (Herve Poussineau)
 
* syssetup: Do not fail if the .inf file does not have a .Services section. (Eric Kohl)
 
* syssetup: Do not fail if the .inf file does not have a .Services section. (Eric Kohl)
 +
* syssetup: Fill in missing locale, location, and default keyboard layout. (Stanislav Motylkov)
 +
* syssetup: Register type libraries before signaling we are done. This prevents a race condition. (Mark Jansen)
 +
* syssetup: Enable sound events for Workstation. (Oleg Dubinskiy)
 
* ole32: Fixed a bug causing "Scan folder" command to fail on second attempt in SUMo. (Kyle Katarn, Nikolay Sivov, Doug Lyons)
 
* ole32: Fixed a bug causing "Scan folder" command to fail on second attempt in SUMo. (Kyle Katarn, Nikolay Sivov, Doug Lyons)
 
* msgina: Implemented friendly UI shutdown dialog. (Vladimir Barinov, Arnav Bhatt)
 
* msgina: Implemented friendly UI shutdown dialog. (Vladimir Barinov, Arnav Bhatt)
Line 399: Line 455:
 
* dbghelp: Synced to Wine Staging 5.16. (Jerome Gardou)
 
* dbghelp: Synced to Wine Staging 5.16. (Jerome Gardou)
 
* storprop: Added missing property provider stubs. (Eric Kohl)
 
* storprop: Added missing property provider stubs. (Eric Kohl)
 +
* riched20: Fixed a bug causing crash with Firefox 52 crash reporter. (Serge Gautherie)
 +
* riched20: Fixed a bug causing crash with Baidu Browser installer. (Katayama Hirofumi MZ)
  
 
'''Commands and utilities:'''
 
'''Commands and utilities:'''
Line 408: Line 466:
 
* sysdm.cpl: Display system identifier when SMBIOS is not available, required for NEC PC-98 and Xbox ports. (Stanislav Motylkov)
 
* sysdm.cpl: Display system identifier when SMBIOS is not available, required for NEC PC-98 and Xbox ports. (Stanislav Motylkov)
 
* sysdm.cpl: If processor brand name does not exist, fall back to identifier. (Stanislav Motylkov)
 
* sysdm.cpl: If processor brand name does not exist, fall back to identifier. (Stanislav Motylkov)
 +
* sysdm.cpl: Dialog improvements. (Arnav Bhatt, Hermes Belusca-Maito)
 
* powercfg.cpl: Rearranged and fixed minor bugs. (Kyle Katarn)
 
* powercfg.cpl: Rearranged and fixed minor bugs. (Kyle Katarn)
 
* netid.cpl: Improved the Computer Name property page along with other minor bug fixes. (Eric Kohl)
 
* netid.cpl: Improved the Computer Name property page along with other minor bug fixes. (Eric Kohl)
Line 418: Line 477:
 
* desk.cpl: Start video card after its installation and let Win32k detect it. (Herve Poussineau)
 
* desk.cpl: Start video card after its installation and let Win32k detect it. (Herve Poussineau)
 
* desk.cpl: Only try to restart graphic device after installation. If it fails, require a reboot. (Herve Poussineau)
 
* desk.cpl: Only try to restart graphic device after installation. If it fails, require a reboot. (Herve Poussineau)
 +
* taskmgr: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
 +
* taskmgr: Preserve graphs history on resizes. Also the graph stays preserved on the show/hide kernel time toggle. (Valerij Zaporogeci)
 +
* taskmgr: Make 'Hide When Minimized' non-default. (Katayama Hirofumi MZ)
 
* notepad: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
 
* notepad: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
 
* notepad: Implemented File->New Window. (Robert Naumann)
 
* notepad: Implemented File->New Window. (Robert Naumann)
 
* mspaint: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
 
* mspaint: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
 
* mspaint: Rewritten loading/saving image file. (Katayama Hirofumi MZ)
 
* mspaint: Rewritten loading/saving image file. (Katayama Hirofumi MZ)
 +
* mspaint: Lots of improvements. (Katayama Hirofumi MZ) '''STUB ENTRY!!!'''
 
* regedit: Fixed a memory leak. (Kyle Katarn)
 
* regedit: Fixed a memory leak. (Kyle Katarn)
 
* regedit: Fixes and improvements in tree view. (Kyle Katarn)
 
* regedit: Fixes and improvements in tree view. (Kyle Katarn)
Line 430: Line 493:
 
* devmgr: Enable built-in property pages by default. (Eric Kohl)
 
* devmgr: Enable built-in property pages by default. (Eric Kohl)
 
* devmgr: Get rid of the unknown device class hack. (Eric Kohl)
 
* devmgr: Get rid of the unknown device class hack. (Eric Kohl)
 +
* devmgr: Display current assigned resources, instead of boot resources. (Herve Poussineau)
 +
* devmgr: Fixed a bug where double-clicking anywhere when an item is already selected opens the property sheet. (Jesus Sanz del Rey)
 
* osk: Added meta key modifier behaviour. (Arjav Garg)
 
* osk: Added meta key modifier behaviour. (Arjav Garg)
 
* osk: Handle the warning dialog box in its own thread. (George Bisoc)
 
* osk: Handle the warning dialog box in its own thread. (George Bisoc)
 +
* osk: Code overhaul. ''Might be detailed.'' (Baruch Rutman)
 
* charmap: Various functionality improvements and bug fixes. (Charles Ambrye)
 
* charmap: Various functionality improvements and bug fixes. (Charles Ambrye)
 
* eventvwr: Implemented Log Properties page. (Kyle Katarn)
 
* eventvwr: Implemented Log Properties page. (Kyle Katarn)
Line 447: Line 513:
 
* rapps: Fixed double free when closing. (Mark Jansen)
 
* rapps: Fixed double free when closing. (Mark Jansen)
 
* rapps: Speed up app loading by caching the INI sections. (Mark Jansen)
 
* rapps: Speed up app loading by caching the INI sections. (Mark Jansen)
 +
* rapps: Fixed the download dialog not having an icon when RAPPS is started for the first time and the database is downloaded beforehand. (Hermes Belusca-Maito)
 +
* rapps: Show the user that there are no search results. (Mark Jansen)
 
* solitaire: Added undo feature and fixed occasionally invisible cards. (Tibor Lajos Fuzi)
 
* solitaire: Added undo feature and fixed occasionally invisible cards. (Tibor Lajos Fuzi)
 
* certutil: Added skeleton application with support for -hashfile option. (Mark Jansen)
 
* certutil: Added skeleton application with support for -hashfile option. (Mark Jansen)
 +
* 3dtext: Fixed 3D text screensaver using 100% CPU. (Doug Lyons)
 
* cmd: Lots of bug fixes to command parsing and batch file handling. (Hermes Belusca-Maito)
 
* cmd: Lots of bug fixes to command parsing and batch file handling. (Hermes Belusca-Maito)
 
* cmd: Lots of bug fixes in internal commands. (Hermes Belusca-Maito)
 
* cmd: Lots of bug fixes in internal commands. (Hermes Belusca-Maito)
Line 456: Line 525:
 
* arp: Minor bug fixes. (Eric Kohl)
 
* arp: Minor bug fixes. (Eric Kohl)
 
* more: Implemented missing features. (Katayama Hirofumi MZ, Hermes Belusca-Maito)
 
* more: Implemented missing features. (Katayama Hirofumi MZ, Hermes Belusca-Maito)
 +
* attrib: Minor improvements. (Doug Lyons)
 
* tasklist: Implemented this command-line utility for listing active tasks. (He Yang)
 
* tasklist: Implemented this command-line utility for listing active tasks. (He Yang)
 
* fc: Implemented this command-line utility for file comparison. (Katayama Hirofumi MZ)
 
* fc: Implemented this command-line utility for file comparison. (Katayama Hirofumi MZ)
 
* where: Implemented this command-line utility for finding the file location from a executable file name. (Katayama Hirofumi MZ)
 
* where: Implemented this command-line utility for finding the file location from a executable file name. (Katayama Hirofumi MZ)
 +
* drwtsn32: Added support for ARM. (Mark Jansen)
 
* sdbinst: Added application compatibility database installer command-line utility. (Max Korostil, Mark Jansen)
 
* sdbinst: Added application compatibility database installer command-line utility. (Max Korostil, Mark Jansen)
 
* svchost: Fixed PSID initialization so some services could properly start. (Mark Jansen)
 
* svchost: Fixed PSID initialization so some services could properly start. (Mark Jansen)
Line 469: Line 540:
 
* umpnpmgr: Fixed getting device status. (Eric Kohl)
 
* umpnpmgr: Fixed getting device status. (Eric Kohl)
 
* schedsvc: Fixed the job start time calculation for given days of week and implemented the job start time calculation for given days of month. (Eric Kohl)
 
* schedsvc: Fixed the job start time calculation for given days of week and implemented the job start time calculation for given days of month. (Eric Kohl)
 +
* schedsvc: Use a timer to start jobs. This enables the service to start multiple jobs at the same time. (Eric Kohl)
 
* dnsrslvr: Implemented flushing resolver cache entry. (Eric Kohl)
 
* dnsrslvr: Implemented flushing resolver cache entry. (Eric Kohl)
 
* browser: Added service. (Eric Kohl)
 
* browser: Added service. (Eric Kohl)
 
* dhcpcsvc: Change automatic address assignment to use hardware address. (Herve Poussineau)
 
* dhcpcsvc: Change automatic address assignment to use hardware address. (Herve Poussineau)
 
* dhcpcsvc: Make the DHCP client service stoppable. This enables us to stop and restart the DHCP client properly. (Eric Kohl)
 
* dhcpcsvc: Make the DHCP client service stoppable. This enables us to stop and restart the DHCP client properly. (Eric Kohl)
 +
* w32time: Improved w32time setup. (Eric Kohl)
 
* themes: Fixed Lunar theme. (Vaclav Zouzalik)
 
* themes: Fixed Lunar theme. (Vaclav Zouzalik)
  
Line 480: Line 553:
 
* Fixes for GCC and Clang x64 compilation. (Herve Poussineau, Jerome Gardou)
 
* Fixes for GCC and Clang x64 compilation. (Herve Poussineau, Jerome Gardou)
 
* Various fixes for Clang build. (Thomas Faber, Jerome Gardou)
 
* Various fixes for Clang build. (Thomas Faber, Jerome Gardou)
 +
* Fixes based on Coverity.
 
* Removed PowerPC-related code from the kernel, HAL, SDK and Freeloader. (Victor Perevertkin)
 
* Removed PowerPC-related code from the kernel, HAL, SDK and Freeloader. (Victor Perevertkin)
 +
* Added support for compiling with ARM64 (also called AArch64). (Konrad Dybcio, Justin Miller)
 
* Fixed various pool and stack memory disclosures. (Nguyen Trung Khanh)
 
* Fixed various pool and stack memory disclosures. (Nguyen Trung Khanh)
 
* Updated ACPICA to version 20210730. (Thomas Faber)
 
* Updated ACPICA to version 20210730. (Thomas Faber)

Revision as of 23:40, 20 November 2023

This page is related to an upcoming release

ReactOS 0.4.15 is not released yet, the information on this page is referring to the future release of ReactOS 0.4.15.
A Release Engineer should remove this notification once the version is released.


This page is still unfinished and being worked on by ReactOS Community.

This page is updated as ReactOS development progresses, check out here regularly!
Contributions are accepted! Please read here for contributing.


Kernel:

  • Major 64-bit fixes have been merged. TO BE EXPANDED (Timo Kreuzer)
  • Fixed result inspection bugs inside lots of kernel functions. (Jerome Gardou)
  • KE: Fixed a kernel stack exhaustion with SEH. (Thomas Faber)
  • KE: Rewrite KiSystemCallTrampoline in assembly. (Jerome Gardou)
  • KE: Fixed processor initialization failure with older CPUs. (Jerome Gardou)
  • KE: Major bug fixes inside locking mechanisms for SMP support. (Jerome Gardou, Justin Miller, Timo Kreuzer)
  • KE: Initial SMP support. Work in progress. On 64-bit, it's default. (Justin Miller, Timo Kreuzer)
  • KE: Fixed major spinlock bugs for SMP support and TCP/IP driver. (Jerome Gardou)
  • KE: Implemented KeAcquireInStackQueuedSpinLockForDpc and KeReleaseInStackQueuedSpinLockForDpc. (Jerome Gardou)
  • KE: Fixed a crash caused by winetests. (Jerome Gardou)
  • KE: Rewritten zeroing pages in assembly, optimizing it. (Jerome Gardou)
  • KE: Misc bug fixes. (Timo Kreuzer, Jerome Gardou)
  • MM: Correctly handle size of raw data. This fixes OrgPlayer not working. (Thomas Faber)
  • MM: Fixed an obscure BSoD with Standard HAL, under QEMU and Microsoft Virtual PC 2004. (Thomas Faber)
  • MM: Fixed not freing cluster chain for pagefile on FAT on shutdown. (Jerome Gardou)
  • MM: Implemented shrinking big pool allocation table. (Jerome Gardou)
  • MM: Stub-plement cookie generation for drivers. (Mark Jansen)
  • MM: Rewrite arch-specifics of the legacy MM. (Jerome Gardou)
  • MM: Beginnings of working set list support. (Jerome Gardou)
  • MM: Bugfixes for filesystem corruptions. (Jerome Gardou)
  • MM: Progress towards paging support. (Jerome Gardou)
  • MM: Fixed MiSetSystemCodeProtection. Windows only makes the header RO for session space mapped drivers (Win32k, DirectX and display drivers)
  • MM: Fixed PFN lock in MmDereferenceSegmentWithLock. (Jerome Gardou)
  • MM: Fixes for balancer thread. (Jerome Gardou)
  • MM: Lots of misc bug fixes. SUBJECT TO CHANGE! (Jerome Gardou)
  • MM: Mm is now the real master of how pages are kept in memory for mapped files (including cached files). (Jerome Gardou)
  • CC: Rewritten Cc to be a client of Mm. (Jerome Gardou)
  • CC: Balancer is now tuned according to Cc rewrite. (Jerome Gardou)
  • CC: Raise status when data mapping fails. (Timo Kreuzer)
  • CC: Fixed BSoD when attempting to open executables from remote locations. (Jerome Gardou)
  • CC: Lots of misc bug fixes. SUBJECT TO CHANGE! (Jerome Gardou)
  • IO: Fixed a few bugs in hard error reporting mechanism that causes freezing, when ejecting a CD manually. (Hermes Belusca-Maito)
  • IO: Fixed a stack overflow. (Thomas Faber)
  • IO: Fixed a number of bugs causing filesystem corruption. (Jerome Gardou)
  • IO: Misc bug fixes. (Hermes Belusca-Maito, Herve Poussineau)
  • IO: Fixed a bug causing BSoD when loading audio drivers from Windows XP/Server 2003. (Oleg Dubinskiy)
  • IO: Create non volatile registry keys for root devices (as for other devices). (Herve Poussineau)
  • IO: Use a guarded region in IopQueueIrpToThread. (Thomas Faber)
  • IO/PNP: Massive work for NT5 storage stack support (enabling proper device hot-plugging and unplugging) and USB device support, including USB boot: (Pierre Schweitzer, Victor Perevertkin)
    • IO: Properly check the Ft volumes. This fixes regression that Unix drives are not assigned a drive letter.
    • IO: Rewritten letter assigning to disks to make NT5-compliant.
    • IO: Fixed a major race condition causing ReactOS to crash intermittently when USB hubs are present.
    • IO: Fixed IRP stack location check when forwarding IRPs synchronously.
    • IO: Fixed an access violation when shutting down after removing USB drive.
    • IO: Do not create a device object and node on every driver load.
    • IO: Massively refactored driver initialization and dynamic driver loading/unloading code.
    • IO: Added more enumeration requests during the boot process. This is to ensure that all needed devices are initialized during the early boot.
    • IO: Implemented PiCallDriverAddDevice (+in PNP). What does this function do?
    • IO: Added PiActionAddBootDevices device action (+in PNP). What does this function do?
    • PNP: Enumerate the device tree after loading boot drivers and HAL.
    • PNP: Improved and refactored PnP notifications. This is required for storage stack replacement.
    • PNP: Implemented NT5.2-like DEVICE_NODE state management.
  • PNP: Fixed a stack overflow. (Thomas Faber)
  • PNP: Install mouse driver on NEC PC-98 series. (Dmitry Borisov)
  • PNP: Added a control class for a driver being installed for a non-critical device. (Victor Perevertkin)
  • PNP: Initialize DeviceDesc and LocationInformation registry fields for manually reported devices, as it is required by the newdev.dll for installing drivers from INF files. This fixes a number of unrecognized devices after PNP works. (Victor Perevertkin)
  • PNP: Do not overwrite existing DeviceDesc values. (Eric Kohl)
  • PNP: Fixed resource conflict detection. This will prevent loading vgamp.sys for a display adapter if another driver is already loaded. (Victor Perevertkin, Herve Poussineau)
  • PNP: Release resources when device is removed. This is a hack. (Herve Poussineau)
  • PNP: Set devices as reported Instance key and Control key of legacy devices at report time. (Herve Poussineau)
  • PNP: Let pnproot only report already detected devices. This prevents new zombie devices appearing on each reboot. (Herve Poussineau)
  • EX: Use RtlCutoverTimeToSystemTime to determine the current time zone ID. This fixes some time zone adjustment problems. (Eric Kohl)
  • FSRTL: Fixed memory corruption when pruning tunnel cache. (Jerome Gardou)
  • FSRTL: Fixed some MCB bugs. (Jerome Gardou)
  • FSTUB: Optimized retrieving disk basic geometry information along with disk size. (Victor Perevertkin)
  • FSTUB: Fixed some bugs with new storage drivers. (Victor Perevertkin)
  • OB: Massive progress by George Bisoc. STUB ENTRY, TO BE EXTENSIVELY DETAILED!!!
  • SE: Massive progress by George Bisoc. STUB ENTRY, TO BE EXTENSIVELY DETAILED!!!
  • PS: Massive progress by George Bisoc. STUB ENTRY, TO BE EXTENSIVELY DETAILED!!!
  • PS: Use KD routine to safely read memory from thread stack. This fixes a crash when hitting TAB+any character. (Jerome Gardou)
  • CM: Temporarily worked around some asserts. (Victor Perevertkin)
  • CM: Do not create value if processor brand name does not exist. This fixes showing processor incorrectly as 'Unknown Intel processor'. (Stanislav Motylkov)
  • CM: Report key creation to the notify code. (Eric Kohl)
  • PO: Report correct CPU frequency in MHz. (Stanislav Motylkov)
  • PO: Fixed a BSoD caused by shutdown with IDE driver stack from Windows Server 2003. (Dmitry Borisov)
  • WMI: Fixed a crash with acpi.sys from Windows XP. (Serge Gautherie)
  • INBV: Fixed screen flash. (Yaroslav Kibysh)
  • KD: Merged major work. TO BE EXPANDED (Herve Poussineau)
  • KD: Change the way we detect if exception is from kernel mode or user mode. (Herve Poussineau)
  • KDBG: Work for functionality on x64. (Herve Poussineau, Jerome Gardou)
  • ntoskrnl_vista: Implemented more functions for new storage stack drivers. (Victor Perevertkin)
  • FreeLoader: Fixes for x64. MORE EXPLANATION NEEDED! (Timo Kreuzer)
  • FreeLoader: Fixed I/O range size of serial ports. (Herve Poussineau)
  • FreeLoader: Work with Xbox GPU memory registers properly. (Stanislav Motlykov)
  • FreeLoader: Added vertical screen scrolling for Xbox with console mode. (Dmitry Borisov)
  • FreeLoader: Added display controller detection for Xbox. (Stanislav Motylkov)
  • FreeLoader: Added system identifier for Xbox. (Stanislav Motylkov)
  • FreeLoader: Initialize PCI-AGP bridge BAR values. This fixes problem with Xbox GPU not being detected as a children device. (Stanislav Motylkov)
  • FreeLoader: Fixed CHS read on old BIOSes which lack INT 3e. (Thomas Schneider)
  • FreeLoader: Add the possibility to change the boot load options from TXTSETUP.SIF at runtime from the boot selection menu or from FREELDR.INI. (Hermes Belusca-Maito)
  • FreeLoader: Minor speed fixes and font change for PC-98 port. (Stanislav Motylkov)
  • FreeLoader: Various minor fixes. (Hermes Belusca-Maito)
  • FreeLoader: Added/fixed heap allocation failure handling. (Serge Gautherie)

Setup:

  • Optimize font loading. (Herve Poussineau)
  • Support a custom way to extract files for cabinet files. This will be used to extract files from cabinet to memory, instead of writing them to disk. (Herve Poussineau)
  • Fixed the way device-install events are queued and dequeued. This fixes many regressions in device installations. (Hermes Belusca-Maito)
  • Applied a workaround to avoid blinking during screen clearing. (Hermes Belusca-Maito)
  • Use more Windows compatible formatting and disk checking functions. (Hermes Belusca-Maito)
  • Added temporary workarounds for properly detecting GPT disks. Installation to GPT disks is not supported yet. (Hermes Belusca-Maito)
  • Added a workaround for installing from USB drives in setuplib. (Victor Perevertkin)
  • If system partition is not recognized, install FreeLoader to floppy/removable media. (Hermes Belusca-Maito)
  • Update MBR partition types and add GPT GUID partition types. (Hermes Belusca-Maito)
  • Use new device control class for a driver being installed for a non-critical device. Added a device status check before starting attempt, so we're not touching devices which are already started. (Victor Perevertkin)
  • Display some contents in the page whilst installing the bootloader. (George Bisoc)

Win32 subsystem:

  • win32ss/gdi: Added StretchBlt function ability to flip images. Vertical/horizontal rotation and 180 degrees mirroring now work. (Doug Lyons)
  • win32ss/gdi: Rewrite DIB1BPP -> DIB1BPP copy. This fixes some crashes & memory corruptions happening because of all those broken loops. (Jerome Gardou)
  • win32ss/gdi: Implemented seldom used API and update types for local DC's. (James Tabor)
  • win32ss/ntgdi: Fixed leaking of bitmaps while testing INFO DC's. (James Tabor)
  • win32ss/ntgdi: Fixed brush attribute transfer. (James Tabor)
  • win32ss/ntgdi: Support the wide pen. (Katayama Hirofumi MZ)
  • win32ss/ntgdi: Strictly check pen style. (Katayama Hirofumi MZ)
  • win32ss/eng: Fixed a locking bug causing random crashes with NVidia drivers older than 181.22. (Jerome Gardou)
  • win32ss/eng: Fixed detection of multiple display devices on VirtualBox. (Timo Kreuzer)
  • win32ss/eng: Search for the correct display name when updating graphics devices list. (Oleg Dubinskiy)
  • win32ss/eng: Mark created bitmaps as API bitmaps. This allows Windows XP/2003 DirectDraw stack (ddraw.dll & dxg.sys) to properly work in ReactOS (in software emulation mode), even on real hardware. (Oleg Dubinskiy)
  • win32ss/user: Fixed a bug affecting Spotify installer. (Katayama Hirofumi MZ)
  • win32ss/user: Fixed potential use after free when painting child windows. (Jerome Gardou)
  • win32ss/ntuser: Allocate a buffer for a classname that is too long. This fixes .NET WPF applications not starting. (Mark Jansen)
  • win32ss/ntuser: Use strict thread and desktop verifying. This fixes a crash caused by Process Hacker. (James Tabor)
  • win32ss/ntuser: Work for supporting Japanese input by implementing new functions. (Katayama Hirofumi MZ)
  • win32ss/ntuser: Fixed shell hooks. (Katayama Hirofumi MZ)
  • win32ss/ntuser: Fixed gradient caption bars with low color depth. (Dmitry Borisov)
  • win32ss/ntuser: Fixed an integer underflow within scrollbar info setting. (I_Kill_Bugs, Hermes Belusca-Maito)
  • win32ss/ntuser: Start Win32k by initalizing GDI first. (Jerome Gardou)
  • win32ss/ntuser: Fixes for global user lock. (Jerome Gardou)
  • win32ss/ntuser: In debug builds, enable free & tail checking when creating heaps. This catches bugs. (Jerome Gardou)
  • win32ss/ntuser: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
  • win32ss/ntuser: Make sure to hold user global lock before playing with desktops. This fixes crash with Mongoose web server and IguanaCMS. (Hermes Belusca-Maito)
  • win32ss/ntuser: Fixed where linking newly created window is done. This fixes exception when loading any app in Dependency Walker. (I_Kill_Bugs, Katayama Hirofumi MZ)
  • win32ss/ntuser: Implement HSHELL_RUDEAPPACTIVATE notification. (Katayama Hirofumi MZ)
  • win32ss/ntuser: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
  • win32ss/ntuser: Fixed bug causing task buttons in taskbar not to work correctly sometimes. (Katayama Hirofumi MZ)
  • win32ss/ntuser: Do not remove message from the Message Queue if not ours. This fixes 3D Text ScreenSaver freezing system. (I_Kill_Bugs, Doug Lyons)
  • win32ss/ntuser: Use call procedure handle if available. This fixes Zeus Lite crashing. (I_Kill_Bugs, Katayama Hirofumi MZ)
  • win32ss/printing: Massiveed fixups and implementations. Implemented APIs in winspool and forwarded them to spoolss and localspl. (James Tabor)
  • win32ss: Misc bug fixes. (Jerome Gardou)
  • reactx/ntddraw: Fixed a bug causing DirectX 1-7 games not starting. (Oleg Dubinskiy)
  • reactx/ntddraw: Improved DxEngGetDCState type 2 implementation. This allows to properly enable and use DirectDraw and Direct3D hardware acceleration with MS DirectX components. (Oleg Dubinskiy)
  • gdi32: Fixed bug preventing display of characters in the CD key box of Starcraft, Visual Basic 5 and Visual Basic 6 installers. (Doug Lyons)
  • gdi32: Fixed a double call. (Doug Lyons)
  • gdi32: Fixed regression causing Word 2003 to crash on startup. (James Tabor)
  • gdi32: Fixed wrong ordering of parameters in NtGdiDdGetDC call. It's needed by MS DirectDraw stack. (Oleg Dubinskiy)
  • gdi32: Revise IntTMWFixUp raster font list, preventing text drawing regressions. (Doug Lyons)
  • gdi32: Do not fail on path with bitmap fonts. (James Tabor)
  • gdi32: Fixed metafile packing recursion issues. (James Tabor)
  • gdi32: Updated metafile code from Wine. (James Tabor)
  • gdi32: Fixed rectangle flag issues. This fixes opaque text rendering. (James Tabor)
  • user32: Fixed display corruption issues when scrolling in Change Icon dialog and a number of cases. (Jose Carlos Jesus)
  • user32: Implement and load IMM table. (Katayama Hirofumi MZ)
  • user32: Properly save EBX in the wndproc wrapper. (Jerome Gardou)
  • user32: NtUserProcessConnect now returns pointers in user client-space. This fixes crash with IMM. (Hermes Belusca-Maito)
  • user32: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
  • gdiplus: Added support for EMF/WMF bitmap formats. (Katayama Hirofumi MZ)
  • ntprint: Imported the DLL for printing application utility support. (James Tabor)
  • winlogon: Added hidden logon/logoff SFC notification. (Eric Kohl)
  • winlogon: Show "Restarting..." message when restarting. (Arnav Bhatt)
  • smss: Fixed bug causing truncation of processor names. (Hermes Belusca-Maito)
  • smss: Applied a fix for much safer operation. (Hermes Belusca-Maito)
  • smss: Implemented starting CSR. (Herve Poussineau)
  • basesrv: Reenable some checks in DOS devices management. Is this an important change to be noted here? (Hermes Belusca-Maito)
  • csrsrv: Fixed locking logic when destroying threads & processes. (Jerome Gardou)
  • userinit: Added unattend.inf functionality to LiveCD. (Mark Jansen)
  • imm32: Massive work for supporting Japanese input. (Katayama Hirofumi MZ) More explanation needed!
  • imm32: Fixed crash when loading MS user32.dll. (Oleg Dubinskiy)
  • ntvdm: Improved DOS file search implementation. (Hermes Belusca-Maito)
  • ntvdm: Minor improvements. (Hermes Belusca-Maito)

Drivers:

  • Replaced storage stack drivers with NT5-compatible ones (Victor Perevertkin):
    • disk_new: Replaced old disk driver.
    • cdrom_new: Replaced old cdrom driver and added it into the critical device database.
    • classpnp: Replaced old class2 driver.
    • partmgr: Added the Partition Manager driver, making it an upper filter driver for disk class.
    • scsiport: Made the driver PnP-aware, only non-PnP miniport drivers (mostly uniata) are supported for now.
  • scsiport: Fixed a number of misc bugs. (Eric Kohl, Jerome Gardou)
  • scsiport: Trim the device ID and the device description. (Eric Kohl)
  • scsiport: Added the enumerator (SCSI) to the compatible IDs and fixed other hardware IDs. (Eric Kohl)
  • scsiport: Append the missing "SCSI <device type> Device" string to the device description. (Eric Kohl)
  • scsiport: Ignore LUNs not supported by the adapter. This fixes single disk being recognized as 8 separate disks on VirtIO SCSI controller. (Herve Poussineau)
  • partmgr: Register a disk interface for disk PDO. With fixes in setupapi and umpnpmgr, Rufus correctly displays device info. (Victor Perevertkin)
  • partmgr: Removed hacks as PnP manager should not send bogus IRPs anymore. (Victor Perevertkin)
  • partmgr: Volume devices do not have compatible IDs and their instance IDs are not unique. (Eric Kohl)
  • partmgr: Mark partitions as removable if device is removable. This fixes USB flash drives are being recognized as "Local Disk". (Herve Poussineau)
  • fs_rec: Register a recognizer for FAT filesystem on CD-ROMs. This handles the \FatCdrom device, supported by MS FastFAT. (Hermes Belusca-Maito)
  • fastfat_new: Finally replaced old fastfat driver thanks to Mm/Cc works. Along with massive PnP works, this is the final step for USB boot and proper device hot-plugging/unplugging support. (Jerome Gardou)
  • ntfs: Add new defines for file attributes. (Marat Nagayev)
  • ntfs: Check file isn't encrypted. (Marat Nagayev)
  • btrfs: Fixed a memory leak. (Hermes Belusca-Maito)
  • btrfs: Do not rely on mountmgr when mounting volumes. This turns off mountmgr listening on new devices. Now BTRFS will only be mounted on demand when OS asks for it. Temporary workaround for CORE-17469! (Victor Perevertkin)
  • udfs: Fixed a bug causing wrong data and BSoD. (Victor Perevertkin, Suraj K. Suresh)
  • reiserfs: Remove the ReiserFS driver. The upstream driver is not maintained and the file system itself is in a semi-abandoned state. (Victor Perevertkin)
  • ffs: Remove the FFS/UFS driver. The upstream driver is not maintained and the file system itself is in a semi-abandoned state. (Victor Perevertkin)
  • i8042prt: Removed IRP stubbing. (Thomas Faber)
  • i8042prt: Added Latitude D820 to the hack list. (Scott Maday)
  • inport: Added driver for bus mouse devices. (Dmitry Borisov)
  • kbdclass: Properly stub power IRP handling. (Thomas Faber)
  • mouclass: Properly stub power IRP handling. (Thomas Faber)
  • kbdhid: Minor bug fixes. (Eric Kohl)
  • mountmgr: Fixed a number of bugs towards storage stack replacement. (Victor Perevertkin)
  • storahci: Disabled the driver. (Victor Perevertkin)
  • uniata: Emulate SCSI INQUIRY to properly recognize Xbox DVD drives. (Stanislav Motylkov)
  • uniata: Better split of model name between Vendor and Product: Try to split model into vendor and product on a space if possible. This fixes uniata filling some devices incorrectly. (Herve Poussineau)
  • uniata: Fixed copy-pasta on 5 Promise device IDs. (Serge Gautherie)
  • floppy: Make floppy drives letters being handled by the mount manager. (Pierre Schweitzer)
  • usbccgp: Fixed some bugs found by Driver Verifier. (Thomas Faber)
  • usbstor: Enabled USB ATAPI CD-ROM support. (Victor Perevertkin)
  • usbstor: Minor bug fixes. Removed workarounds for old storage drivers. (Victor Perevertkin)
  • usbstor: Added device definitions for SFF-8070i (ARMD-style devices). (Stanislav Motylkov)
  • usbhub: Added a delay hack for USB boot. (Victor Perevertkin)
  • tcpip: Fixed "Socket is not connected" error when using SUMo/DUMo. (Sylvain Deverre)
  • tcpip: Added missing null checks. This fixes BSoD when opening multiple tabs in Firefox. (Thomas Brogan)
  • e1000: Minor improvements. (Dmitry Borisov)
  • ne2000: Use the real MAC address instead of a fake one. (Herve Poussineau)
  • acpi: Do not panic if processor brand name does not exist. (Stanislav Motylkov)
  • isapnp: Enabled the driver with major bug fixes. (Herve Poussineau)
  • isapnp: Massive work for the driver being able to detect cards. (Dmitry Borisov)
  • isapnp: Enabled support for NEC PC-98 series. (Dmitry Borisov)
  • pci: Fixed PDO removal. (Herve Poussineau)
  • pci: Accept a bus number range instead of a single bus number. (Herve Poussineau)
  • pci: Enabled loading the driver. (Victor Perevertkin)
  • pci: Filter out devices with null vendor and device ID, as in Windows. This fixes display depth problems in LiveCD after video improvements. (Stanislav Motylkov)
  • pcix: Make the resource section not discardable. Driver needs to be able to access their message resources at any time. It allows booting with atapi.sys and pciidex.sys from Windows Server 2003. (Dmitry Borisov)
  • pciide: Make the resource section not discardable. Driver needs to be able to access their message resources at any time. It allows booting with atapi.sys and pciidex.sys from Windows Server 2003. (Dmitry Borisov)
  • pciidex: Implemented debugging function. Now also this driver can be used in Windows XP/Server 2003. (Dmitry Borisov)
  • parport: Fixed I/O port length check. This fixes the driver on the Compaq N600c laptop. (Victor Perevertkin)
  • vbemp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
  • vbemp: Correctly report legacy resources (VGA I/O ports and memory). (Herve Poussineau)
  • vgamp: Correctly fill physical video memory adress and length. These variables must be filled by miniport if miniport is VGA-compatible. (Herve Poussineau)
  • vgamp: Correctly report legacy resources (VGA I/O ports and memory)
  • vbe: Enabled driver start in the registry. (Victor Perevertkin)
  • vbe: Really fixed VGA EDID bug for QEMU and removed the previous workaround. (Herve Poussineau)
  • videoprt: Mark low memory range as NOACCESS when we don't need to access it. (Jerome Gardou)
  • videoprt: Fixed monitor ID decoding issues. (Eric Kohl)
  • videoprt: Report monitor name instead of the generic 'Monitor' string. (Herve Poussineau)
  • videoprt: Implemented creating secondary display devices. (Timo Kreuzer)
  • videoprt: Do not attach secondary devices to the device stack. This fixes display on the primary screen. (Timo Kreuzer)
  • videoprt: Fixes for registry value issues and key creation. (Herve Poussineau)
  • videoprt: Fixed handling of legacy VGA resources. With fixes in port drivers of display, garbled display with emulators are now resolved. (Herve Poussineau)
  • videoprt: Miscellaneous improvements. (Timo Kreuzer)
  • bootvid: Added boot video driver for NEC PC-98. (Dmitry Borisov)
  • bootvid: Added boot video driver for Xbox. (Stanislav Motylkov)
  • bootvid: Fixed drawing strings on top of the bitmap. (Dmitry Borisov)
  • bootvid: Refactored and optimized the driver. (Stanislav Motylkov)
  • pc98vid: Added framebuffer video miniport driver for NEC PC-98 series. (Dmitry Borisov)
  • blue: Add an IOCTL to directly choose which font to use (instead of codepage). (Herve Poussineau)
  • portcls: Fixed audio stutter with official AC97 driver. (Michael Stamper)
  • wdmaud.drv: Fixed a race condition. (Michael Stamper)
  • hdaudbus: Fixed a deadlock occuring on ThinkPad x60s. (Victor Perevertkin)
  • mmixer: Fixed a null dereference. (Joachim Henze)
  • xboxvmp: Work with Xbox GPU memory registers properly. (Stanislav Motylkov)

Shell:

  • Enabled ATL asserts and fixed bugs. Some more ATL progress. (Katayama Hirofumi MZ, Mark Jansen)
  • Enabled auto-completion and new Browse for Folder dialog in shell components. (Katayama Hirofumi MZ)
  • explorer: Correct auto-startup behaviour. (Stanislav Motylkov)
  • explorer: Implemented hook activating main window. (Katayama Hirofumi MZ)
  • explorer: Fixed crash when closing PowerPoint 2007. (Katayama Hirofumi MZ)
  • explorer: Handle RunOnceEx by invoking RunOnceEx in iernonce.dll. (He Yang)
  • explorer: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
  • explorer: Fixed infinite loop with taskbar auto-hide enabled. (Jose Carlos Jesus)
  • explorer: Adjust AUTOHIDE size. (Katayama Hirofumi MZ)
  • shell32: Command 'start C:' now opens drive C. (Katayama Hirofumi MZ)
  • shell32: Enable Del/Delete key to delete the selected folder in "Browse for Folder" dialog. (Katayama Hirofumi MZ)
  • shell32: Improve Recent Documents in Start Menu. Add items of "My Documents" and "My Pictures" into Recent menu item. (Katayama Hirofumi MZ)
  • shell32: Fixed "Open With..." spamming registry MRU keys. (Kyle Katarn)
  • shell32: Set the Run dialog to use the newer style browse for file dialog. (Katayama Hirofumi MZ)
  • shell32: Notify filesystem changes. Now creating or deleting files/folders will be responsive in Explorer. (Katayama Hirofumi MZ)
  • shell32: Distinguish floppy drive and non-floppy removable drive in icon and description. (Katayama Hirofumi MZ)
  • shell32: Show error if the drive type is unknown or there is no volume mounted. (Charles Ambrye)
  • shell32: Properly enumerate virtual shell folders (on files) as fake folders. (Mark Jansen)
  • shell32: Implemented some more functions. (Katayama Hirofumi MZ)
  • shell32: Implemented notifying shortcut problems. (Katayama Hirofumi MZ)
  • shell32: Reimplemented Copy to Folder feature. (Katayama Hirofumi MZ)
  • shell32: Implemented Move to Folder feature. (Katayama Hirofumi MZ)
  • shell32: Implemented Move To/Copy To buttons. (Katayama Hirofumi MZ)
  • shell32: Fixed sorting on size for big files. (Mark Jansen)
  • shell32: Show size on disk in file/folder properties. (Kyle Katarn)
  • shell32: Fixed some message box truncation issues. (Hermes Belusca-Maito, Kyle Katarn)
  • shell32: Fixed arrow keys and reordering on List View. (Katayama Hirofumi MZ)
  • shell32: Improved file operations. (Kyle Katarn)
  • shell32: Enable Ctrl+Backspace in auto-complete edit boxes. (Katayama Hirofumi MZ)
  • shell32: Minimally implemented opening Control Panel in shell. (Kyle Katarn)
  • shell32: Make Browse for Folder dialog box resizable. (Katayama Hirofumi MZ)
  • shell32: Added stubs for Windows shell DLLs. (Oleg Dubinskiy)
  • shell32: Hide "This version of ReactOS is registered to:" text on LiveCD or 2nd stage setup. (Riley Bell)
  • shell32: Fixed shell executions not working properly when paths include spaces. (Siavosh Kasravi)
  • shell32: Determine if the FS is of type FATX. (George Bisoc)
  • shell32: Do not format the partition if it's a system drive. This is a temporary measure! (George Bisoc)
  • shell32: Show product version on About dialog BMP. (Catalin Gabriel Draghita)
  • shell32: Implemented path resolving. (Katayama Hirofumi MZ)
  • shell32: Add fallback for failing shell extension. (Mark Jansen)
  • shell32: Add missing SS_NOPREFIX to labels in About dialog. (William Kent)
  • shell32: Minor bug fixes to avoid debug spam. (Doug Lyons)
  • shell32: Implemented getting attributes from data object. This is required for font installation from fontext. (Mark Jansen)
  • shell32: Fixed creating shortcut of a drive by right click drag-and-drop. (Katayama Hirofumi MZ)
  • shell32: Show error message if move or copy operation failed. This allows user to know when there is not enough space on the target media, when there is no permissions for the operation, or some other error. (Denis Malikov)
  • shell32: Use IDI_SHELL_DOCUMENT for broken non-exe icons. This helps Explorer not to crash with icons. (Katayama Hirofumi MZ)
  • shell32: Fixed double-clicking the menu bar in the file browser leaving menu in pressed state. (Jesus Sanz del Rey)
  • browseui: Make the captions of the explorer bars vertically centered. (Katayama Hirofumi MZ)
  • browseui: Implemented Move To/Copy To buttons. (Katayama Hirofumi MZ)
  • browseui: Enable Ctrl+Backspace in auto-complete edit boxes. (Katayama Hirofumi MZ)
  • browseui: Implemented auto-completion. (Katayama Hirofumi MZ)
  • browseui: Added stubs for Windows shell DLLs. shimgvw.dll from Windows now correctly works. (Oleg Dubinskiy)
  • shimgvw: Correctly draw display border. (Katayama Hirofumi MZ)
  • shimgvw: Implemented a number of new features. (Carlo Bramini)
  • shimgvw: Fixed wrong text in title bar. (Carlo Bramini)
  • shimgvw: Fixed wrong Ctrl+K handling. (Katayama Hirofumi MZ)
  • shimgvw: Improve zooming feature and realize image edit. (Carlo Bramini)
  • shellfind: Fixed column sorting in search results folder. (Brock Mammen)
  • shellfind: Fixed directory search upon non-empty word/phrase query. (Katayama Hirofumi MZ)
  • shellfind: Searches are now encoding-aware. (Katayama Hirofumi MZ)
  • zipfldr: Fixed date on extraction. (Mark Jansen)
  • zipfldr: Fixed files being extracted to %s. (Mark Jansen)
  • zipfldr: Fixed several layout problems and added bitmaps in extraction wizard. (Stanislav Motylkov, Doug Lyons, Oleg Dubinskiy)
  • zipfldr: Improved error reporting. (Stanislav Motylkov)
  • zipfldr: Show error when compression method is not supported. (Stanislav Motylkov)
  • fontext: Preparation work for fonts folder implementation. (Katayama Hirofumi MZ)
  • fontext: Fixed font installation from there. Dragging font to font folder will now succeed and refresh the font view. (Mark Jansen)
  • shellbtrfs: Prevent the compression dropbox from accepting free text. (Mark Harmstone)

System DLLs:

  • hal: Major 64-bit fixes have been merged. TO BE EXPANDED (Timo Kreuzer)
  • hal: Report HAL root device to the stack before passing it to the driver, PnP now correctly delays device actions if needed. (Victor Perevertkin)
  • hal: Fixed calculation of timer increment. (Timo Kreuzer)
  • hal: Removed many hacks to fix PnP synchronization bugs. (Victor Perevertkin)
  • hal: Restore Windows compatibility on reporting device IDs. (Victor Perevertkin)
  • hal: Updated the PCI hardware IDs database. (Serge Gautherie)
  • hal: Removed non-ACPI APIC support. (Victor Perevertkin)
  • hal: Various fixes have been made (including clock issues) and hacks are now removed for APIC HAL, making it usable. This is required for SMP support. (Timo Kreuzer)
  • hal: Disable lazy IRQ in APIC HAL. Lazy IRQL feature has issues with interrupt delivery on VirtualBox. (Justin Miller)
  • hal: Added HAL for SMP. (Justin Miller, Timo Kreuzer)
  • hal: Hack KeTryToAcquireQueuedSpinlock and KeTryToAcquireQueuedSpinLockRaiseToSynch into a somewhat working implementation. (Jerome Gardou)
  • hal: Stub-implemented scatter/gather DMA operations. (Herve Poussineau)
  • hal: Stup-implemented scatter/gather listing size and implemented building list. (Herve Poussineau)
  • hal/xbox: Fixed clock drift. Added a new rollover table for Original Xbox. This fixes potential timing issues in kernel and drivers. (Yaroslav Kibysh)
  • hal/xbox: Initialize PCI bridge secondary and subordinate bus values. This fixes the recursion when pci.sys attempts to get PCI bridge children devices, which in fact are non-existing. (Stanislav Motylkov)
  • hal/pc98: Added HAL for NEC PC-98. (Dmitry Borisov)
  • kernel32: Fixed a bug with process priorities. Task Manager now correctly shows priority of a process. (Colin Finck)
  • kernel32: Synced NLS files with Wine 6.7. (Jerome Gardou)
  • kernel32: Implemented SetFileCompletionNotificationModes. (Oleg Dubinskiy)
  • kernel32: Fixed localization problems with GetGeoInfoW, including in NLS. (Stanislav Motylkov)
  • kernel32: Implemented One-Time initialization API and exported for NT6 build. (Ratin Gao)
  • ntdll: Major 64-bit fixes have been merged. TO BE EXPANDED (Timo Kreuzer)
  • ntdll: Marked Windows Server 2003 functions and added Vista exports. (Timo Kreuzer)
  • ntdll/rtl: Some work towards debug information. (Mark Jansen)
  • ntdll/rtl: Implemented functionality allows viewing unloaded modules in Windbg. (Mark Jansen)
  • ntdll/rtl: Implemented a routine to massively speed up CMake in configuration process of building ReactOS on ReactOS. (Thomas Faber)
  • ntdll/rtl: Implemented getting product type. (George Bisoc)
  • ntdll/rtl: Added code to SxS manifest parser to parse XML namespaces. (William Kent)
  • ntdll/rtl: Fixed heap usage flags. (Jerome Gardou)
  • ntdll/rtl: Do not mess with critical section lock when there is no reason to. (Jerome Gardou)
  • ntdll/rtl: Implemented acquiring shared and exclusive SRW locks. (Jerome Gardou)
  • ntdll/rtl: Fixed a busy loop and applied a performance fix. These will make a huge performance boost for memory intensive apps like CMake. (Jerome Gardou)
  • ntdll/rtl: Implemented two functions for Unicode. (Mark Jansen)
  • ntdll/rtl: Fixed functions for multibyte OEM codepages. (Jerome Gardou)
  • ntdll/rtl: Fixed result inspection bugs inside lots of functions. (Jerome Gardou)
  • ntdll/crt: Implemented a number of new functions for ARM and various bugfixes have been made. Now ReactOS apps compiled for ARM can run on Windows ARM stable. (Roman Masanin, Mohammed Mediouni, Stanislav Motylkov, Justin Miller)
  • ntdll/crt: Fixed bug preventing Git running from the command line. (Jerome Gardou)
  • ntdll/crt: Miscellaneous fixes and improvements. (Jerome Gardou, Timo Kreuzer)
  • ntdll/csr: Fixed a bug. MORE EXPLANATION NEEDED! (Hermes Belusca-Maito)
  • advapi32: Properly implement creating restricted token. (George Bisoc)
  • d3dx9: Synced with Wine 6.0-rc5. (Jerome Gardou)
  • dsound: Fixed and improved DirectSoundEnumerateW and DirectSoundCaptureEnumerateW implementations , using the Windows-compatible way to get the device name and pass it to callback. This fixes incorrect detection of DirectSound audio input and output devices, so now a lot of apps are able to detect it correctly, and can play the sound properly. (Oleg Dubinskiy)

User-mode DLLs:

  • comctl32: Fixed recalculation of property-sheet dialog position. Now some dialogs will not appear in only half visible. (Jose Carlos Jesus)
  • comctl32: Differentiate between real and virtual folders, do not allow traversal inside virtual folders when selecting a file. This fixes being unable to select a zip file for upload in Firefox. (Mark Jansen)
  • comctl32: Fixed arrow keys and reordering on List View. (Katayama Hirofumi MZ)
  • comctl32: Improved IP address controls (tab and caret). (Katayama Hirofumi MZ)
  • comctl32: Fixed wrong behavior about Tab key. Pressing Tab key should focus next dialog item. (Katayama Hirofumi MZ)
  • comctl32: Fixed an incorrect return value for image list removing. (Kyle Katarn)
  • comctl32: Fixed bug causing Process Explorer 16.02 to crash on MSVC builds. (Mark Jansen)
  • comctl32: Redraw children when the combo box is dropped down. (Gabriel Ivancescu)
  • comctl32: Fixed bug causing to be unable to switch between tabs in Task Manager. (Katayama Hirofumi MZ)
  • comdlg32: Fixed bug that causes glitches in Registry Editor. (Kyle Katarn)
  • comdlg32: Fixed ALT+F4 not closing the application if focus is on treeview component (example: Regedit, Event Viewer). (Kyle Katarn)
  • comdlg32: Added Recent Documents and My Network Places to the places bar in the open file dialog. (Jared Smudde)
  • comdlg32: Fixed driver string usage. (James Tabor)
  • comdlg32: Support shortcut keys on File Open/Save dialogs. (Katayama Hirofumi MZ)
  • comdlg32: Fixed ico3 not shown in Print dialog. (Jose Carlos Jesus)
  • uxtheme: Properly show disabled close button. (Stanislav Motylkov)
  • uxtheme: Fix incorrect part IDs in button class map. (Zhiyi Zhang, Robert Naumann)
  • shlwapi: Fixed bug causes main application of TuneUp Utilities 2014 not starting. (Oleg Dubinskiy)
  • shlwapi: Fixed some message box truncation issues. (Hermes Belusca-Maito, Kyle Katarn)
  • shlwapi: Implemented support for auto-completion in shell. (Katayama Hirofumi MZ)
  • shlwapi: Minor bug fixes. (Hermes Belusca-Maito)
  • appwiz: Make shortcut name selected on creation. (Jose Carlos Jesus)
  • appwiz: Fixed crash in 2nd stage setup when aborting Wine Gecko download. (Katayama Hirofumi MZ)
  • appwiz: Fixed being unable to enter long text in Create Shortcut Wizard. (Katayama Hirofumi MZ)
  • mshtml: Fixed error when viewing an image from a desktop shortcut. (Katayama Hirofumi MZ)
  • iernonce: Add RunOnceEx functionality (GSoC 2021 project). (He Yang)
  • iphlpapi: Fixed some test crashes. (Doug Lyons)
  • wininet: Synced with Wine 6.0-rc1. (Jerome Gardou)
  • netapi32: Fixed a bug causing exception in Chrome 48. (Eric Kohl)
  • ws2_32: Minor bug fixes. (Jerome Gardou)
  • dnsapi: Implemented flushing resolver cache entry. (Eric Kohl)
  • netcfgx: Create unique network connection names. (Eric Kohl)
  • mpr: Added a number of stubs. (Serge Gautherie)
  • msv1_0: Work towards supporting network login. (Andreas Maier)
  • msi: Fixed two taskbar panes showing on Cancel. (Doug Lyons)
  • setupapi: Fixed bug causes D-LINK DWA-123 USB wireless dongle driver installation to fail. (Oleg Dubinskiy)
  • setupapi: Fixed bug that prevents displaying device info in Rufus. (Victor Perevertkin)
  • setupapi: Use CM_* functions to get list of devices. This prevents Device Manager showing PCI device that is not connected physically. (Eric Kohl)
  • setupapi: Reimplemented SetupDiBuildClassInfoListExW using CM_* functions. We can now enumerate device classes on other computers. (Herve Poussineau)
  • setupapi: Correctly enumerate non-installed devices. Always try to read the correct device GUID from registry, even if GUID filter is disabled. (Herve Poussineau)
  • newdev: When a device install fails, set the 'Unknown' device class for that device. (Eric Kohl)
  • newdev: Set the failure code on failed install. (Eric Kohl)
  • syssetup: Fixed a bug causes Windows Media Encoder 9 not installing. (Oleg Dubinskiy)
  • syssetup: ReactOS Server is now the default product and Service Pack is written to registry. (Katayama Hirofumi MZ)
  • syssetup: Friendly shutdown dialog is activated by selecting Workstation version. (Vladimir Barinov)
  • syssetup: Implemented setting the friendly name for CD-ROM and disk devices. (Eric Kohl)
  • syssetup: Added event log settings to the default security settings and apply them on setup. (Eric Kohl)
  • syssetup: Added name support for account privilege setup, 'Group Membership' section and Guest user rights. (Eric Kohl)
  • syssetup: Added default security settings for ReactOS Server. (Eric Kohl)
  • syssetup: Added audit events setup. Add password/lockout setup to security profile. (Eric Kohl)
  • syssetup: Added account settings, Administrator and Guest accounts could be enabled now. (Eric Kohl)
  • syssetup: Make status dialog look like msgina status dialog. (Yaroslav Kibysh)
  • syssetup: Install nettcpip.inf. (Jerome Gardou)
  • syssetup: Manually start PlugPlay service, and wait for it before continuing. That way, class installers are already registered before installing devices. (Herve Poussineau)
  • syssetup: Do not fail if the .inf file does not have a .Services section. (Eric Kohl)
  • syssetup: Fill in missing locale, location, and default keyboard layout. (Stanislav Motylkov)
  • syssetup: Register type libraries before signaling we are done. This prevents a race condition. (Mark Jansen)
  • syssetup: Enable sound events for Workstation. (Oleg Dubinskiy)
  • ole32: Fixed a bug causing "Scan folder" command to fail on second attempt in SUMo. (Kyle Katarn, Nikolay Sivov, Doug Lyons)
  • msgina: Implemented friendly UI shutdown dialog. (Vladimir Barinov, Arnav Bhatt)
  • msgina: Implemented friendly UI logoff dialog. (Arnav Bhatt)
  • msgina: Allow showing friendly UI shutdown dialog in Server version. (Joachim Henze)
  • msgina: Implemented an undocumented shell turnoff dialog invoking function. (Oleg Dubinskiy)
  • msgina: Improve exports for all stubbed functions. Windows Server 2003 can go further with msgina.dll from ReactOS. (Oleg Dubinskiy)
  • msgina: Determine which kind of dialog box is before terminating it. (George Bisoc)
  • userenv: Implemented profile deletion. (Eric Kohl)
  • samsrv: Added missing aliases. (Eric Kohl)
  • samsrv: Start work on the display cache. Initialize the cache and fill it on demand. (Eric Kohl)
  • lsasrv: Added start code for the netlogon service. (Eric Kohl)
  • lsasrv: Improve the policy change registration and notify registered events. (Eric Kohl)
  • winmm: Fixed timer implementations causing some games running too fast or slow. (Thomas Brogan)
  • profmap: Added initial DLL. (Oleg Dubinskiy)
  • regapi: Added DLL from Wine Staging 5.7. Required by MS winlogon with Win32SS replaced. (Oleg Dubinskiy)
  • vssapi: Added some stubs for Recuva 1.52. (Oleg Dubinskiy)
  • dbgeng: Imported DLL from Wine Staging 4.18. This allows ICQ New 10.0.40117 to work. (Oleg Dubinskiy)
  • dbghelp: Synced to Wine Staging 5.16. (Jerome Gardou)
  • storprop: Added missing property provider stubs. (Eric Kohl)
  • riched20: Fixed a bug causing crash with Firefox 52 crash reporter. (Serge Gautherie)
  • riched20: Fixed a bug causing crash with Baidu Browser installer. (Katayama Hirofumi MZ)

Commands and utilities:

  • Enabled auto-completion and new Browse for Folder dialog in applications. (Katayama Hirofumi MZ)
  • control: Fixed a hang in Control Panel. (wimh, Robert Naumann)
  • sysdm.cpl: Fixed System Properties unduely closing when Users Profile sub-dialog closed with ESC. (Kyle Katarn)
  • sysdm.cpl: Minor layout fixes. (Stanislav Motylkov)
  • sysdm.cpl: Display system identifier when SMBIOS is not available, required for NEC PC-98 and Xbox ports. (Stanislav Motylkov)
  • sysdm.cpl: If processor brand name does not exist, fall back to identifier. (Stanislav Motylkov)
  • sysdm.cpl: Dialog improvements. (Arnav Bhatt, Hermes Belusca-Maito)
  • powercfg.cpl: Rearranged and fixed minor bugs. (Kyle Katarn)
  • netid.cpl: Improved the Computer Name property page along with other minor bug fixes. (Eric Kohl)
  • joy.cpl: Fixed missing UI elements. (Kyle Katarn)
  • openglcfg.cpl: Empty list boxes if registry key is missing. (Ricardo Hanke)
  • intl.cpl: Implemented the selection of a property page by command line. (Eric Kohl)
  • mmsys.cpl: "Browse for sound" dialog is now XP/2003 style. (Jared Smudde)
  • mmsys.cpl: Implemented showing audio property sheet and full control panel. (Eric Kohl)
  • appwiz.cpl: Make Gecko download cancellable by keyboard. (Katayama Hirofumi MZ)
  • desk.cpl: Start video card after its installation and let Win32k detect it. (Herve Poussineau)
  • desk.cpl: Only try to restart graphic device after installation. If it fails, require a reboot. (Herve Poussineau)
  • taskmgr: Fixes for making Task Switcher able to switch halted windows. (Katayama Hirofumi MZ)
  • taskmgr: Preserve graphs history on resizes. Also the graph stays preserved on the show/hide kernel time toggle. (Valerij Zaporogeci)
  • taskmgr: Make 'Hide When Minimized' non-default. (Katayama Hirofumi MZ)
  • notepad: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
  • notepad: Implemented File->New Window. (Robert Naumann)
  • mspaint: Add the saved file to Recent Documents. (Katayama Hirofumi MZ)
  • mspaint: Rewritten loading/saving image file. (Katayama Hirofumi MZ)
  • mspaint: Lots of improvements. (Katayama Hirofumi MZ) STUB ENTRY!!!
  • regedit: Fixed a memory leak. (Kyle Katarn)
  • regedit: Fixes and improvements in tree view. (Kyle Katarn)
  • regedit: Display search finished messagebox when using Find Next (F3) menu item. (Oleg Dubinskiy)
  • devmgr: Avoid buffer overflow when device registry key size is greater than 100 characters. (Victor Perevertkin)
  • devmgr: Report property changes by the device manager to the installer. (Eric Kohl)
  • devmgr: Removed hacks as PnP manager should not send bogus IRPs anymore. (Victor Perevertkin)
  • devmgr: Enable built-in property pages by default. (Eric Kohl)
  • devmgr: Get rid of the unknown device class hack. (Eric Kohl)
  • devmgr: Display current assigned resources, instead of boot resources. (Herve Poussineau)
  • devmgr: Fixed a bug where double-clicking anywhere when an item is already selected opens the property sheet. (Jesus Sanz del Rey)
  • osk: Added meta key modifier behaviour. (Arjav Garg)
  • osk: Handle the warning dialog box in its own thread. (George Bisoc)
  • osk: Code overhaul. Might be detailed. (Baruch Rutman)
  • charmap: Various functionality improvements and bug fixes. (Charles Ambrye)
  • eventvwr: Implemented Log Properties page. (Kyle Katarn)
  • eventvwr: Add a context menu to TreeView items. Specify a default extension when opening or saving an event-log file. (Jose Carlos Jesus)
  • iexplore: Make DuckDuckGo our default search engine. (Victor Perevertkin)
  • dxdiag: If processor brand name does not exist, fall back to identifier. (Stanislav Motylkov)
  • rapps: Merged GSoC 2020 work. TO BE EXPANDED (He Yang)
  • rapps: Added error messages on all download failure cases. (Kyle Katarn)
  • rapps: Move database source URL to settings dialog. (He Yang)
  • rapps: Fixed unhandled exception when trying to modify/uninstall without any selection. (Kyle Katarn)
  • rapps: Display custom applications icons for installed applications. (Oleg Dubinskiy)
  • rapps: Add support for extracting folders from .cab files. (Mark Jansen)
  • rapps: Introduce a shim for command prompt. (Mark Jansen)
  • rapps: Implemented support for architecture specific sections. (Timo Kreuzer)
  • rapps: Fixed double free when closing. (Mark Jansen)
  • rapps: Speed up app loading by caching the INI sections. (Mark Jansen)
  • rapps: Fixed the download dialog not having an icon when RAPPS is started for the first time and the database is downloaded beforehand. (Hermes Belusca-Maito)
  • rapps: Show the user that there are no search results. (Mark Jansen)
  • solitaire: Added undo feature and fixed occasionally invisible cards. (Tibor Lajos Fuzi)
  • certutil: Added skeleton application with support for -hashfile option. (Mark Jansen)
  • 3dtext: Fixed 3D text screensaver using 100% CPU. (Doug Lyons)
  • cmd: Lots of bug fixes to command parsing and batch file handling. (Hermes Belusca-Maito)
  • cmd: Lots of bug fixes in internal commands. (Hermes Belusca-Maito)
  • cmd: Use only one line for the version header. (Joachim Henze)
  • cmd: CHCP command now changes thread locale and command prompt font. (Hermes Belusca-Maito)
  • cmd: Performance and API test improvements. (Jerome Gardou)
  • arp: Minor bug fixes. (Eric Kohl)
  • more: Implemented missing features. (Katayama Hirofumi MZ, Hermes Belusca-Maito)
  • attrib: Minor improvements. (Doug Lyons)
  • tasklist: Implemented this command-line utility for listing active tasks. (He Yang)
  • fc: Implemented this command-line utility for file comparison. (Katayama Hirofumi MZ)
  • where: Implemented this command-line utility for finding the file location from a executable file name. (Katayama Hirofumi MZ)
  • drwtsn32: Added support for ARM. (Mark Jansen)
  • sdbinst: Added application compatibility database installer command-line utility. (Max Korostil, Mark Jansen)
  • svchost: Fixed PSID initialization so some services could properly start. (Mark Jansen)
  • umpnpmgr: Some more progress towards safe device removal. (Eric Kohl)
  • umpnpmgr: Fixed the way device-install events are queued and dequeued. This fixes many regressions in device installations. (Hermes Belusca-Maito)
  • umpnpmgr: Fixed bug that prevents displaying device info in Rufus. (Victor Perevertkin)
  • umpnpmgr: Use new device control class for a driver being installed for a non-critical device. (Victor Perevertkin)
  • umpnpmgr: Install drivers for all devices available on boot. Don't wait for their events to appear, just retrieve the list and install drivers. This fixes the installation of manually reported device nodes. (Victor Perevertkin)
  • umpnpmgr: Implemented setting device problem. (Eric Kohl)
  • umpnpmgr: Fixed getting device status. (Eric Kohl)
  • schedsvc: Fixed the job start time calculation for given days of week and implemented the job start time calculation for given days of month. (Eric Kohl)
  • schedsvc: Use a timer to start jobs. This enables the service to start multiple jobs at the same time. (Eric Kohl)
  • dnsrslvr: Implemented flushing resolver cache entry. (Eric Kohl)
  • browser: Added service. (Eric Kohl)
  • dhcpcsvc: Change automatic address assignment to use hardware address. (Herve Poussineau)
  • dhcpcsvc: Make the DHCP client service stoppable. This enables us to stop and restart the DHCP client properly. (Eric Kohl)
  • w32time: Improved w32time setup. (Eric Kohl)
  • themes: Fixed Lunar theme. (Vaclav Zouzalik)

Tasks:

  • ReactOS now builds with GCC 8.4 and MSVC 2015. (Victor Perevertkin)
  • Fixes for GCC and Clang x64 compilation. (Herve Poussineau, Jerome Gardou)
  • Various fixes for Clang build. (Thomas Faber, Jerome Gardou)
  • Fixes based on Coverity.
  • Removed PowerPC-related code from the kernel, HAL, SDK and Freeloader. (Victor Perevertkin)
  • Added support for compiling with ARM64 (also called AArch64). (Konrad Dybcio, Justin Miller)
  • Fixed various pool and stack memory disclosures. (Nguyen Trung Khanh)
  • Updated ACPICA to version 20210730. (Thomas Faber)
  • Updated mpg123 to 1.26.2. (Thomas Faber)
  • Updated mbedtls to 2.16.11. (Thomas Faber)
  • Updated libxml2 to 2.9.12. (Thomas Faber)
  • Updated caroots.inf. (Mark Jansen)
  • Added Kernel Mode Driver Framework 1.17 from Microsoft. (Victor Perevertkin)
  • Added Windows Driver Framework from Microsoft. (Victor Perevertkin)
  • Various fixes by cppcheck. (Serge Gautherie)
  • APIs for higher Windows versions are more correctly exposed. (Serge Gautherie)
  • Implemented the Auxiliary Kernel-Mode Library in DDK and uncommented the code in KMDF which uses it. (Victor Perevertkin)
  • Fixed resource sections in GCC builds. (Dmitry Borisov)
  • txt2nls: Rewrite the tool with support for multibyte codepages & glyph tables. (Jerome Gardou)
  • nls: Use files provided by Microsoft to generate most of our NLS files. (Jerome Gardou)
  • Added new sound for Recycle Bin sound event. It's disabled by default. (Oleg Dubinskiy)

Outside the tree:

Versions / Official Changelogs / Community Changelogs
0.4.x Series 0.4.1 | 0.4.2 | 0.4.3 | 0.4.4 | 0.4.5 | 0.4.6 | 0.4.7 | 0.4.8 | 0.4.9 | 0.4.10 | 0.4.11 | 0.4.12 | 0.4.13 | 0.4.14 | 0.4.15