Difference between revisions of "ChangeLog-0.3.5"

From ReactOS Wiki
Jump to: navigation, search
(GDI32)
(Kernel-mode subsystem server (Win32K))
Line 37: Line 37:
 
* Fix some bugs in NtGdiSelectBitmap ([[Timo Kreuzer]])
 
* Fix some bugs in NtGdiSelectBitmap ([[Timo Kreuzer]])
 
* Add GdiBCSelObj to GdiFlushUserBatch ([[James Tabor]])
 
* Add GdiBCSelObj to GdiFlushUserBatch ([[James Tabor]])
 +
* Fix type field calculation in GDIOBJ_CovertToStockObject ([[Timo Kreuzer]])
 +
* Change gdi object deleting mechanism to a windows compatible one ([[Timo Kreuzer]])
 +
* Fix a DC handle leak in UserDrawIconEx ([[Timo Kreuzer]])
 +
* remove GDIOB_XxxDbg functions ([[Timo Kreuzer]])
 +
* Enhance backtracing and debug output for GDI_DEBUG ([[Timo Kreuzer]])
 +
* implement GDIOBJ_ValidateHandle() ([[Timo Kreuzer]])
 +
* simplify a check in UserGetDcEx ([[Timo Kreuzer]])
 +
* Fix a check in UserGetDcEx ([[Timo Kreuzer]])
 +
* Remove DCX_KEEPCLIPRGN flag when creating a clip region in UserGetDcEx, fixes a region leak  ([[Timo Kreuzer]])
 +
* Don't abuse GDIOBJ_LockObj to validate a handle, use GDIOBJ_ValidateHandle instead  ([[Timo Kreuzer]])
 +
* Add some additional debug output to GDIOBJ_LockObj ([[Timo Kreuzer]])
 +
* Recurse into IntGdiDeleteDC directly, instead of going back to NtGdiDeleteObjectApp and pass Force parameter on ([[Timo Kreuzer]])
 +
* Don't create a background brush for a new menu, fixes a brush leak ([[Timo Kreuzer]])
 +
* Use intrinsic interlocked functions for gdi object locking ([[Timo Kreuzer]])
 +
* Add a function to get a full stackbacktrace ([[Timo Kreuzer]])
 +
* Remove obsolete syscalls NtUserGetDesktopWindow and NtUserGetParent ([[Stefan Ginsberg]], stefan__100__ AT hotmail DOT com)
 +
* Fix a mem leak in bitmap code ([[Timo Kreuzer]])
 +
* BITMAPOBJ_CopyBitmap: release lock and delete created bitmap on failure, copy flags, fixes a memory leak ([[Timo Kreuzer]])
 +
* Rename ObmXxx functions to UserXxx functions ([[Timo Kreuzer]])
 +
* Remove some macros ([[Timo Kreuzer]])
 +
* Move function prototypes to object.h ([[Timo Kreuzer]])
 +
* Implement UserreferenceObjectByHandle creating a reference to the object, used for cursoricon stuff so far ([[Timo Kreuzer]])
 +
* Rewrite object manager functions to reasonably handle references ([[Timo Kreuzer]])
 +
* Dereference cursoricons correctly, so they will really get deleted, fixes a cursoricon leak ([[Timo Kreuzer]])
 +
* Destroy submenus in NtUserDestroyMenu, fixes a menu leak ([[Timo Kreuzer]])
 +
* Free the buffer of the menu text, fixes a mem leak ([[Timo Kreuzer]])
 +
* Delete old bitmaps in NtUserSetCursorContent, fixes a bitmap leak ([[Timo Kreuzer]])
 +
* Delete monitor object on failure ([[Timo Kreuzer]])
 +
* Move NtGdiFlushUserBatch prototype to ntgdi.h ([[Timo Kreuzer]])
 +
* Move pool tags from ntgdihdl.h to win32k/tags.h ([[Timo Kreuzer]])
 +
* Move DC struct from ntgdihdl.h to win32k/dc.h ([[Timo Kreuzer]])
 +
* Replace GDIEMPTYHDR with BASEOBJECT ([[Timo Kreuzer]])
 +
* Use BASEOBJECT in DC and GDIDEVICE structures ([[Timo Kreuzer]])
 +
* Rename some NtGdiXxx functions that don't deserve that name and remove some that were defined by a macro, but don't exist on windows (#if 0'ed atm) ([[Timo Kreuzer]])
 +
* Remove RetrieveDisplayHDC() prototype, function doesn't exist ([[Timo Kreuzer]])
 +
* Remove typecasts PBITMAPOBJ <-> PSURFOBJ ([[Timo Kreuzer]])
 +
* Use GDIOBJ_ShareLockObj / _UnlockObjByPtr instead of Eng(Un)LockSurface as BITMAPOBJ_Un/LockObj ([[Timo Kreuzer]])
 +
* Add BASEOBJECT to bitmap, brush, palette, font and region structures ([[Timo Kreuzer]])
 +
* Move bad ntuser syscalls in ntuser.h to the bottom ([[Stefan Ginsberg]], stefan__100__ AT hotmail DOT com)
 +
* Sort win32k export list alphabetically ([[Stefan Ginsberg]], stefan__100__ AT hotmail DOT com)
 +
* Remove obsolete Win32kInitialize and NtGdiGetAspectRatioFilterEx ([[Stefan Ginsberg]], stefan__100__ AT hotmail DOT com)
 +
* Add missing exports to win32k.def (all from xp) ([[Timo Kreuzer]])
 +
* Don't free the memory for the palette entries in IntSetPalette ([[Timo Kreuzer]], bug #3072)
 +
* Reference CursorIcon before deleting it ([[Timo Kreuzer]])
 +
* IntGetPaintMessage: Set MessageQueue->PaintCount to 0, if no dirty Window is found. Stops spamming the debuglog ([[Timo Kreuzer]])
 +
* UserGetDCEx: Check if a dce's hDC is valid, if not warn and create a new one ([[Timo Kreuzer]])
 +
* Don't dump the stack backtrace twice in GDIOBJ_Xxx functions ([[Timo Kreuzer]])
 +
* Replace GDIOBJHEDR with BASEOBJECT structure ([[Timo Kreuzer]])
 +
* Remove HandleTable parameter from GDIOBJ_Xxx functions ([[Timo Kreuzer]])
 +
* Fix a wrong typecast in PALETTE_setMapping ([[Timo Kreuzer]])
 +
* Call PsGetCurrentThreadWin32Thread() and PsGetCurrentProcess() only once in IntGetWinstaObj ([[Timo Kreuzer]])
  
 
== Control panel applets ==
 
== Control panel applets ==

Revision as of 02:35, 12 March 2008

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

General

Generic 0.3.5 Changes

Translations

Build Tools

CabMan

RBuild

Core

Bootloader (FreeLoader)

Kernel and Executive (NTOSKRNL)

CM

Debugging

IO

KE

LPC

MM

OB

PNP

PS

SE

Hardware Abstraction Layer (HAL)

Run Time Library (RTL)

Kernel Mode Drivers

NT System Library (NTDLL)

Static Libraries

USETUP

Win32™ Personality

User mode subsystem server (CSRSS)

Kernel-mode subsystem server (Win32K)

  • Implement NtGdiSelectBitmap, NtGdiSelectBrush, NtGdiSelectFont and NtGdiSelectPen based on NtGdiSelectObject and tests, move those functions to dc.c, remove NtGdiSelectObject (Timo Kreuzer)
  • Fix some bugs in NtGdiSelectBitmap (Timo Kreuzer)
  • Add GdiBCSelObj to GdiFlushUserBatch (James Tabor)
  • Fix type field calculation in GDIOBJ_CovertToStockObject (Timo Kreuzer)
  • Change gdi object deleting mechanism to a windows compatible one (Timo Kreuzer)
  • Fix a DC handle leak in UserDrawIconEx (Timo Kreuzer)
  • remove GDIOB_XxxDbg functions (Timo Kreuzer)
  • Enhance backtracing and debug output for GDI_DEBUG (Timo Kreuzer)
  • implement GDIOBJ_ValidateHandle() (Timo Kreuzer)
  • simplify a check in UserGetDcEx (Timo Kreuzer)
  • Fix a check in UserGetDcEx (Timo Kreuzer)
  • Remove DCX_KEEPCLIPRGN flag when creating a clip region in UserGetDcEx, fixes a region leak (Timo Kreuzer)
  • Don't abuse GDIOBJ_LockObj to validate a handle, use GDIOBJ_ValidateHandle instead (Timo Kreuzer)
  • Add some additional debug output to GDIOBJ_LockObj (Timo Kreuzer)
  • Recurse into IntGdiDeleteDC directly, instead of going back to NtGdiDeleteObjectApp and pass Force parameter on (Timo Kreuzer)
  • Don't create a background brush for a new menu, fixes a brush leak (Timo Kreuzer)
  • Use intrinsic interlocked functions for gdi object locking (Timo Kreuzer)
  • Add a function to get a full stackbacktrace (Timo Kreuzer)
  • Remove obsolete syscalls NtUserGetDesktopWindow and NtUserGetParent (Stefan Ginsberg, stefan__100__ AT hotmail DOT com)
  • Fix a mem leak in bitmap code (Timo Kreuzer)
  • BITMAPOBJ_CopyBitmap: release lock and delete created bitmap on failure, copy flags, fixes a memory leak (Timo Kreuzer)
  • Rename ObmXxx functions to UserXxx functions (Timo Kreuzer)
  • Remove some macros (Timo Kreuzer)
  • Move function prototypes to object.h (Timo Kreuzer)
  • Implement UserreferenceObjectByHandle creating a reference to the object, used for cursoricon stuff so far (Timo Kreuzer)
  • Rewrite object manager functions to reasonably handle references (Timo Kreuzer)
  • Dereference cursoricons correctly, so they will really get deleted, fixes a cursoricon leak (Timo Kreuzer)
  • Destroy submenus in NtUserDestroyMenu, fixes a menu leak (Timo Kreuzer)
  • Free the buffer of the menu text, fixes a mem leak (Timo Kreuzer)
  • Delete old bitmaps in NtUserSetCursorContent, fixes a bitmap leak (Timo Kreuzer)
  • Delete monitor object on failure (Timo Kreuzer)
  • Move NtGdiFlushUserBatch prototype to ntgdi.h (Timo Kreuzer)
  • Move pool tags from ntgdihdl.h to win32k/tags.h (Timo Kreuzer)
  • Move DC struct from ntgdihdl.h to win32k/dc.h (Timo Kreuzer)
  • Replace GDIEMPTYHDR with BASEOBJECT (Timo Kreuzer)
  • Use BASEOBJECT in DC and GDIDEVICE structures (Timo Kreuzer)
  • Rename some NtGdiXxx functions that don't deserve that name and remove some that were defined by a macro, but don't exist on windows (#if 0'ed atm) (Timo Kreuzer)
  • Remove RetrieveDisplayHDC() prototype, function doesn't exist (Timo Kreuzer)
  • Remove typecasts PBITMAPOBJ <-> PSURFOBJ (Timo Kreuzer)
  • Use GDIOBJ_ShareLockObj / _UnlockObjByPtr instead of Eng(Un)LockSurface as BITMAPOBJ_Un/LockObj (Timo Kreuzer)
  • Add BASEOBJECT to bitmap, brush, palette, font and region structures (Timo Kreuzer)
  • Move bad ntuser syscalls in ntuser.h to the bottom (Stefan Ginsberg, stefan__100__ AT hotmail DOT com)
  • Sort win32k export list alphabetically (Stefan Ginsberg, stefan__100__ AT hotmail DOT com)
  • Remove obsolete Win32kInitialize and NtGdiGetAspectRatioFilterEx (Stefan Ginsberg, stefan__100__ AT hotmail DOT com)
  • Add missing exports to win32k.def (all from xp) (Timo Kreuzer)
  • Don't free the memory for the palette entries in IntSetPalette (Timo Kreuzer, bug #3072)
  • Reference CursorIcon before deleting it (Timo Kreuzer)
  • IntGetPaintMessage: Set MessageQueue->PaintCount to 0, if no dirty Window is found. Stops spamming the debuglog (Timo Kreuzer)
  • UserGetDCEx: Check if a dce's hDC is valid, if not warn and create a new one (Timo Kreuzer)
  • Don't dump the stack backtrace twice in GDIOBJ_Xxx functions (Timo Kreuzer)
  • Replace GDIOBJHEDR with BASEOBJECT structure (Timo Kreuzer)
  • Remove HandleTable parameter from GDIOBJ_Xxx functions (Timo Kreuzer)
  • Fix a wrong typecast in PALETTE_setMapping (Timo Kreuzer)
  • Call PsGetCurrentThreadWin32Thread() and PsGetCurrentProcess() only once in IntGetWinstaObj (Timo Kreuzer)

Control panel applets

Win32™ Applications

Cmd

  • Implement GrowIfNecessary_dbg() using file and line from the caller to cmd_alloc_dbg memory. (Timo Kreuzer)
  • Fix memory allocation size, respecting the terminating 0 (Timo Kreuzer, bug #2845)

Fontview

  • Add fontview to bootcd and add ttf file association (Timo Kreuzer, bug #1411)

Win32™ Libraries

GDI32

  • Add cGetTTFFromFOT stub (Timo Kreuzer)
  • Add some usermode handling to SelectObject, currently if'ed out, as it doesn't properly work yet (James Tabor)
  • Add GDI_OBJECT_TYPE_COLORSPACE to SelectObject using SetColorSpace (James Tabor)

USER32

Template:Changelog