/* $Id: ChangeLog,v 1.1815 2001/11/05 14:59:48 sandervl Exp $ */

 2001-11-05: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o Call old DosOpen if DosOpenL not available

 2001-10-31: knut st. osmundsen <kosmunds@csc.com>
    - CmdQd:    o Dirty workaround for Ctrl-C on client waiting for output
                  so it won't kill the daemon.

 2001-10-30: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o IOCTL_CDROM_READ_TOC bugfix
                o Handle opening of drive without disk and getting handle
                  when disk is inserted
                o Use DosOpenL (if available) to open files, or else the
                  large file apis won't work properly.

 2001-10-29: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o Always IOCTL_DISK/DSK_GETLOCKSTATUS for IOCTL_STORAGE_CHECK_VERIFY
                  (handle doesn't need to be valid for this ioctl)
    - USER32:   o Send WM_DEVICECHANGE to top-level windows when a CD is
                  inserted or removed (poll CD status every 100ms)

 2001-10-29: Achim Hasenmueller <achimha@innotek.de>
    - BUILD:    o strip EAs from binary before executing LXLITE on it to
                  prevent errors in LXLITE if the file is on a LAN Server
                  JFS volume

 2001-10-29: knut st. osmundsen <kosmunds@csc.com>
    - NTDLL:    o _ultow and RtlIntegerToUnicodeString.
    - Makefiles:
                o Remove dummy.c in clean rule.

 2001-10-28: Sander van Leeuwen <sandervl@xs4all.nl>
    - COMCTL32: o LISTVIEW_GetItemWidth bugfix: item can never be bigger
                  than the client area
    - USER32:   o Fixes for Set/GetWindowLong for dialogs. (unicode flag not
                  passed to parent class methods)
                o Added SetDialogHook function for custom build
    - KERNEL32: o Added RegisterCustomDriver
                o Added SetDefaultLanguage to override default language

 2001-10-27: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o IOCTL_SCSI_GET_ADDRESS: fail if wnaspi32 not loaded
    - WINMM:    o Added option to turn off audio by setting a key in the registry
                  HKEY_LOCAL_MACHINE\\System\\CustomBuild
                  DisableAudio = [0|1] (DWORD type)
    - USER32:   o CreateIconIndirect bugfix

 2001-10-26: knut st. osmundsen <kosmunds@csc.com>
    - FastDep:  o Corrected crash on bad dependency file.

 2001-10-26: Achim Hasenmueller <achimha@innotek.de>
    - WNASPI32: o don't fail DLL loading if ASPI library fails to init

 2001-10-26: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o Better implementation of IOCTL_CDROM(DISK/STORAGE)_CHECK_VERIFY
                o CDROM ioctls: Use signature returned by IOCD_IDENTIFY ioctl
                o Implemented IOCTL_CDROM_READ_TOC

 2001-10-26: Patrick Haller <patrick.haller@innotek.de>
    - USER32:   o fixed ESC keyboard event
                o fixed passing thru special key events to the frame window
                o partial fix for shift key processing
                o fixed right shift processing (and possibly numerous
                  other extended keys)
                o fixed this &%$&%! Alt-Gr-Key-Emulation
                  remaining issues:
                    AltGr won't toggle GetAsyncKeyState() or GetKeyState()

 2001-10-25: Patrick Haller <patrick.haller@innotek.de>
    - USER32:   o fixed scancodes for [Pause] and [PrtScr]

 2001-10-25: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o Fixed sending of WM_ACTIVATEAPP messages. Only send them
                  to top-level windows when application gains or loses focus
                  from/to a window of another process.
                o Fix for window tracking with thin frame (moving/sizing
                  window left tracks on the screen (fullscreen dragging disabled))
    - KERNEL32: o Never use DosError to disable hard errors! Use SetErrorMode
                  *and* restore old error mode afterwards.
                o IOCTL_DISK_GET_DRIVE_GEOMETRY change:
                  Applications can use this IOCTL to check if the floppy has
                  been changed. OSLibDosGetDiskGeometry won't fail when that
                  happens so we read one byte from the disk and return
                  ERROR_MEDIA_CHANGED if it fails with ERROR_WRONG_DISK.
    - COMCTL32: o ListView: LVM_SETITEMA: update item even when 'new' text is
                  the same.
                  (CVP depends on this)

 2001-10-24: Patrick Haller <patrick.haller@innotek.de>
    - USER32:   o added translation between PM Scancodes and
                  Windows Scancodes
                  Note: Open32 uses always PM Scancodes!
                o fixed GetKeyNameText as far as possible
                  Despite we'll have to implement a flexible keyboard
                  layout scheme in the future.

 2001-10-24: Achim Hasenmueller <achimha@innotek.de>
    - PMKBDHK:  o link statically with C runtime

 2001-10-24: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o SCROLLBAR: Only set focus to scrollbar control if it has
                  the WS_TABSTOP style (bugfix taken from Wine)
                o IsWindowVisible: check for WS_CHILD style before checking
                  parents
                  (CVP: fixes moving of dialog with invisible owner)
                o Frame tracking: activate and bring window to top when
                  control key is not pressed (OS/2 look)
                  (fixes activation by clicking on title bar and you can now
                   track frame without activating it)
                o Double mouse click sent two up messages
                o Double click on system menu now closes window
                  (SetCapture interferes with double click message generation)
    - WINMM:    o Dynamically load MDM; Windows applications (that don't
                  require sound) will no longer fail when MMPM/2 isn't available.

 2001-10-23: Sander van Leeuwen <sandervl@xs4all.nl>
    - COMCTL32: o ListView: WM_KEYDOWN -> if WM_NOTIFY returns TRUE, then
                  don't process key anymore; the app did it for us
                o ListView: First focus change didn't work
                o Partial implementation of draglists. Only sends DL_BEGINDRAG
                  DRAGLISTMSGSTRING message which is enough for CVP.
    - USER32:   o Fixed moving of window with RMB

 2001-10-23: Patrick Haller <patrick.haller@innotek.de>
    - USER32:   o major improvement on keyboard handling
                  Special AltGr mapping missing yet
                o partial fix to GetKeyNameText(),
                  two Open32 bugs remaining:
                  (injected scancodes ignored (undoc),
                   extended key bit ignored)

 2001-10-22: Patrick Haller <patrick.haller@innotek.de>
    - TESTAPP:  o added keyboard test program for low-level testing
                  of the keyboard routines
                  (Queue, WH_KEYBOARD, WH_KEYBOARD_LL)
    - PMKBDHK:  o added initial version
    - USER32:   o enabled PMKBDHK
                o fixed minor issue in WH_KEYBOARD_LL
    - SHELL32:  o minor speedup in PIDL handling
    - KERNEL32: o removed experimental heap handle cache stats

 2001-10-21: Sander van Leeuwen <sandervl@xs4all.nl>
    - WSOCK32:  o Fix for sending FD_CLOSE notification when connection
                  is closed at the remote end.

 2001-10-20: Achim Hasenmueller <achimha@innotek.de>
    - WNASPI32: o do not fail in init routine in case ASPIROUT.SYS
                  is not present. Just return errors from all calls
                  if this is the case.
                  TODO: refine calls to not return any ASPI devices!

 2001-10-19: Achim Hasenmueller <achimha@innotek.de>
    - WSOCK32:  o implemented error bit handling in Winsock 2.0
                  event semaphore notification for async select

 2001-10-19: Patrick Haller <patrick.haller@innotek.de>
    - COMCTL32: o updated listview and status to wine level
    - COMDLG32: o fix crash in FileDlg95 (used freed memory object)

 2001-10-18: knut stange osmundsen <kosmunds@csc.com>
    - odin32.*.vac3*.mk:
                o Added /noignorecase to ILIBFLAGS. Object libraries
                  is now using case sensitive names. This removes some
                  warnings during custombuild and fixes a duplicate symbol
                  problem in kKrnlLibR3.

 2001-10-18: Achim Hasenmueller <achimha@innotek.de>
    - USER32:   o temporarily backed out a change from earlier today
                  in the color pointer conversion code that causes
                  severe regressions. Look for @@@AH in oslibres.cpp

 2001-10-18: Sander van Leeuwen <sandervl@xs4all.nl>
    - DDRAW:    o Check if DirectDraw object is associated with Clipper.
    - SHELL32:  o Compile fix for release build
    - USER32:   o Fix for pointer conversion
                o Notify visible region callback when WM_SHOW arrives.
                  For some reason we don't receive a WM_VRNENABLED message
                  when a window is shown for the first time.
    - KERNEL32: o Check for NULL handler in RtlRaiseException/RtlUnwind
    - GDI32:    o Removed wrong warnings about GpiQueryBitmapBits

 2001-10-17: knut stange osmundsen <kosmunds@csc.com>
    - common:   o Corrected bug in kFile buffering which caused impdef to
                  crash in some cases.

 2001-10-17: Patrick Haller <patrick.haller@innotek.de>
    - SHELL32:  o WINE resync 20011017
    - KERNEL32: o minor heap optimization
    - USER32:   o minor handle mgmt optimizations
    - CRTDLL32: o RegisterLxDll() in initterm was missing (WINPROJ)

 2001-10-17: Sander van Leeuwen <sandervl@xs4all.nl>
    - DDRAW:    o Fixes for DDBLT_COLORFILL
    - WS2_32:   o Added stubs for WSAEnumProtocolsA/W
    - USER32:   o SetFocus fix; don't always activate window because that
                  changes the z-order which interferes (among other things)
                  with GetNextDlgTabItem & GetNextDlgGroupItem
                o Removed some GetNextDlgGroupItem changes which are no longer
                  necessary due to the SetFocus fix

 2001-10-16: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32, CUSTOMBUILD, USER32:
                o Custom build fixes + changes
                o GlobalMemoryStatus: limit amount of virtual memory to 2GB - 1
                  Some applications interpret this value as a signed long.
    - USER32:   o Fix for pointer conversion

 2001-10-16: Patrick Haller <patrick.haller@innotek.de>
    - WSOCK32:  o enabled receive and send timeout socket options
                  (SO_SNDTIMEO, SO_RCVTIMEO)

 2001-10-15: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32, USER32, WNASPI32, DDRAW:
                o Custom build updates

 2001-10-14: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o Convert color cursor to monochrome if it only uses two colors.
                  This overcomes a silly limitation in some less advanced
                  display drivers. (SDD still has no support for color cursors!)
                  (fixes mouse cursor flickering & screen distortion when
                   accessing the frame buffer directly)
                  NOTE: This is a partial solution only. Real color cursors
                        still use GRADD's rather poor software emulation.

 2001-10-13: Sander van Leeuwen <sandervl@xs4all.nl>
    - WSOCK32:  o Overwrite IP header length in sendto for raw sockets
                  with IP_HDRINCL option set.
                  (fixes errors for apps that use big endian format for
                   the length word)
                o WSAEnumNetworkEvents now reports (some) events properly
                o Call WSACleanup during dll unload in case application
                  forgot to do that.

 2000-10-12: Yuri Dario <mc6530@mclink.it>
    - USER32:   o GetNextDlgGroupItem fix for infinite loop in Opera

 2001-10-12: Achim Hasenmueller <achimha@innotek.de>
    - KERNEL32: o use bounce buffers if end of buffer crosses
                  tiled region barrier, not start of buffer
                  (yeah, being nit-picking here, OS/2 will actually
                  never give you a memory object that crosses the boundary...)

 2001-10-11: Patrick Haller <patrick.haller@innotek.de>
    - include:  o debugtools.h: memory corruption in debugstr_()
    - KERNEL32: o (cheap) heap lookup acceleration
                o better profiler calibration :)
                o bounce buffers for DeviceIoControl() with
                  high memory buffers
    - SHELL32:  o ~10% speed improvement on shell folder operations ;-)

 2001-10-11: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o SetScrollRange: return error if min > max or out of range
                                  (ERROR_INVALID_SCROLLBAR_RANGE)
                  (behaviour of NT4, SP6)
                o Scrollbar control window not disabled properly when using
                  EnableWindow instead of EnableScrollbar. (handle WM_ENABLE
                  and call EnableScrollbar)
                o Forward WM_SYSCOMMAND to Parent (for scrollbar control window
                  with size grip style)
    - WSOCK32:  o Implemented IP_HDRINCL, IP_TTL & IP_TOS for set/getsockopt
    - WS2_32:   o Translate IPPROTO_IP options in getsockopt before calling
                  wsock32

 2001-10-11: Patrick Haller <patrick.haller@innotek.de>
    - KERNEL32: o added ODIN performance profiler
                  (perf_0.log for PROFILE builds)
    - SHELL32:  o ~30% speed improvement on shell folder operations

 2001-10-10: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o Do not blindly add ODIN_FUNCTION macros to functions that
                  get called very often. (like IsWindow, GetParent & IsWindowVisible)
                  This tends to make logfiles very big...
    - WSOCK32:  o Added IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IP_MULTICAST_LOOP &
                  IP_MULTICAST_TTL to setsockopt
                o Add support for WS2_32 IPPROTO_IP options
    - WS2_32:   o Translate IPPROTO_IP options in setsockopt before calling
                  wsock32
    - DDRAW:    o Commented out DiveAcquire/DeaquireFrameBuffer for now
                  (surflock/unlock)

 2001-10-10: Patrick Haller <patrick.haller@innotek.de>
    - KERNEL32: o added IOCTL_CDROM_EJECT_MEDIA
                        IOCTL_CDROM_LOAD_MEDIA
                        IOCTL_CDROM_PAUSE_AUDIO
                        IOCTL_CDROM_STOP_AUDIO
                        IOCTL_CDROM_RESUME_AUDIO
                        IOCTL_CDROM_PLAY_AUDIO_MSF
                o added IOCTL_STORAGE_EJECT_MEDIA
                        IOCTL_STORAGE_LOAD_MEDIA
                        IOCTL_DISK_EJECT_MEDIA
                        IOCTL_DISK_CHECK_VERIFY
    - IPHLPAPI: o added fake version of GetAdaptersInfo()
    - ODINWRAP: o standard C compiler compatibility
    - MAKE:     o fixes to the profile make include
    - SHELL32:  o PIDL: instrumentation for performance tuning

 2001-10-09: Sander van Leeuwen <sandervl@xs4all.nl>
    - KERNEL32: o Image header page must be readonly
                o Temporarily disabled high memory usage for heap

 2001-10-08: Patrick Haller <patrick.haller@innotek.de>
    - USER32:   o enabled WH_KEYBOARD_LL hook, seems to work
                o added further messages to wndmsg.cpp
    - KERNEL32: o added further error codes to error2WinError

 2001-10-08: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o WM_WINDOWPOSCHANGED: activation fix; must clear FF_NOACTIVATESWP
                  if mp2 & AWP_ACTIVATE
                  (fixes activation of some inactive windows; used to be
                   activated but not brought to the top)

 2001-10-07: Sander van Leeuwen <sandervl@xs4all.nl>
    - DDRAW:    o Don't use Dive for blitting to/from 8 bpp surfaces
    - USER32:   o Eliminated flickering during frame sizing due to
                  unnecessary drawing
                o Fixed handling of WM_SIZING/WM_MOVING (changing rectangles)
                o WM_TRACKFRAME: call Frame_SysCommandSizeMove with SC_MOVE+HTCAPTION

 2001-10-06: Sander van Leeuwen <sandervl@xs4all.nl>
    - QUARTZ/OLEAUT32:
                o Wine 20011004 resync
    - KERNEL32: o Reduce overhead for heap allocation
                o Always allocate heap memory from high memory (if available)
                o Allocate extra heap memory in 64kb units
                  MUST use 64kb here or else we are at risk of running out
                  of virtual memory space. (when allocating 4kb we actually
                  get 4kb + 60k uncommited)
                  (fixes out of resources error while loading big movies
                   in The Playa)

 2001-10-05: Sander van Leeuwen <sandervl@xs4all.nl>
    - DDRAW:    o Added stretching support for blitting to the screen
                  (the Playa can now play movies in fullscreen mode)

 2001-10-03: Sander van Leeuwen <sandervl@xs4all.nl>
    - WINMM:    o Allocate handle for new timer and verify handle
                  is valid before using it.
                  (prevents crashes when app attempts to delete timer twice
                   (DivX 4))
    - DDRAW:    o Fixed memory leaks in SurfBlt4 (rectangles)
                o Take clipping into account in SurfBlt4. Windowed DirectDraw
                  blitting now seems to work well.
                  (only tried DivX 4; needs more testing)
    - USER32:   o Rewrote sizing & moving of windows (frame tracking)
                  (ported Wine version + fixed some bugs)
                  Some applications (e.g. RealPlayer) resize themselves
                  when receiving WM_SIZING msgs. Not possible to send those
                  with PM's frame tracking.
                  TODO: fix flickering of size border (dynamic drag off)
                  TODO: WM_SIZING handling not 100% correct yet
                  TODO: Must display size/move cursor when starting action
                        from system menu
                o GetDCEx change; always call WinGetClipPS (!CS_OWNDC)
    - OLEAUT32: o Wine update

 2001-10-02: Sander van Leeuwen <sandervl@xs4all.nl>
    - REGSVR32: o Must use LoadLibrary, not CoLoadLibrary
                  (Some dlls (divx codec) call CoFreeUnusedLibraries which
                   unloads the same dll if we use CoLoadLibrary (-> crash)
                   NT's regsvr32 doesn't use CoLoadLibrary either)
    - USER32:   o OSLibWinGetMsg bugfix

 2001-10-01: Sander van Leeuwen <sandervl@xs4all.nl>
    - USER32:   o Lastest Wine revision of GetNextDlgGroupItem ported + modified

