source: tags/0.8.9/changelog

Last change on this file was 22064, checked in by dmik, 9 years ago

Release 0.8.9.

File size: 79.2 KB
Line 
10.8.9 (2013-02-17)
2------------------
3    - kernel32: Fix long string output to stdout in console I/O mode.
4    - kernel32: Fix endless loop in new console I/O mode. This
5      fixes hangs of Java applicaitons logging to the console.
6    - gdi32: Fix crash in ResetDCW() caused by accessing invalid memory. This
7      fixes printing in all Java applications.
8    - riched32: Return TRUE from EM_SETBKGNDCOLOR and EM_SETCHARFORMAT.
9
100.8.8 (2012-12-31)
11------------------
12    - kernel32: Export ODIN_ThreadContextSave and ODIN_ThreadContextResore.
13      Needed for recent Flash.
14    - kernel32: Add stubs for CoQueryProxyBlanket and friends. Required by
15      recent Flash.
16    - kernel32: Implement proper input/output console support for VIO
17      applications in Odin SDK mode. This makes APIs like
18      GetNumberOfConsoleInputEvents actually work. This mode is only used
19      if stdin/stdout is not redirected and not piped.
20    - kernel32: Make all console modes on by default except ENABLE_WINDOW_INPUT
21      (according to MSDN).
22
230.8.7 (2012-12-19)
24------------------
25    - kernel32: Add RegisterDummyExeEx that allows to specify a resource tree
26      simulating the resource section of a real Win32 EXE.
27    - kernel32: Make LoadLibraryEx correctly return the Win32 EXE module handle
28      when given full EXE file name.
29    - kernel32: Serialize stack trace logging on crashes to make sure it's not
30      intermixed with output from other threads.
31    - kernel32: Increase the maximum number of GDI handles from 1024 to 4096.
32      This fixes some heavily interactive flash content.
33
340.8.6 (2012-10-23)
35------------------
36    - kernel32: Fix crash when using the new SEH scheme (0.8.5 regression).
37    - kernel32: Disable Win32 TIB switch completely by default. This fixes spins
38      in an exception handler loop in some applications (e.g. LibreOffice trying
39      to load JVM.DLL).
40    - kernel32: Add support for custom PE/PEC/W16ODIN paths to ODIN.INI (fixes
41      broken PE/PEC functionality in RPM packages).
42    - kernel32: Add GetCPInfoEx and ConvertThreadToFiber (needed for GTK).
43    - kernel32: Add InitializeSListHead (needed for MSVCR100.DLL).
44    - kernel32: Fix inverted return values in GetFileInformationByHandle and
45      some other APIs (this could confuse Flash 10.1+).
46    - kernel32: Implement GetFileInformationByHandle for directories.
47    - kernel32: Add support for Windows XP SP3 version and make it the default.
48    - user32: Partly implement MsgWaitForMultipleObjectsEx (for Flash 11.4).
49    - shell32: Export SHGetSpecialFolderPathW (needed by Flash 11.4).
50    - crypt32: Disable debug fields of RTL_CRITICAL_SECTION_DEBUG (fixes
51      occasional crashes in CRYPT32.DLL e.g. during playback of some Flash).
52    - odininst: Register DLLs that require registration (fixes playback of some
53      Flash content for Flash versions starting from 10.1).
54    - pe: Don't add .exe if an extension is already present in the program name
55      (this fixes programs like InstallShiled that use non-standard extensions).
56    - pe: Fix memory allocation error for some Win32 EXEs (this error could be
57      displayed if the size of the EXE was too small).
58
590.8.5 (2012-07-21)
60------------------
61    - kernel32: Fix a crash in PE.EXE/PEC.EXE.
62    - kernel32: Export CreateToolhelp32Snapshot, Trhread32First, Trhread32Next
63      stubs (used by Flash).
64    - kernel32: Make SEH work in OS/2 context (to avoid FS register switches
65      to Win32 context and back).
66    - kernel32: Derive HOMEDRIVE/HOMEPATH environment vars from HOME which is
67      used by some applications to locate the home directory.
68    - kernel32: Improve logging (showing current FS mode).
69    - user32: Make WM_MOUSEACTIVATE and WM_PARENTNOTIFY message handling
70      identical to the real Windows behavior.
71    - user32: Return an already existing wrapper from CreateFakeWindowEx()
72      instead of NULL (this is much more practical).
73    - ntdll: export RtlGetVersionNumber.
74    - gdi32: Fix lost text in TextOut() when used with non-identity trasformation
75      matrix. This fixes missing text elements in some applications.
76    - gdi32: Implement wide version of ResetDC(). Used by recent OpenJDK.
77    - iphlpapi: Fix possible crash in GetAdaptersInfo() and friends. This fixes
78      spontaneous crashes that could occur in applications using the network.
79    - Add a new shiny Odin logo to the About Odin dialog.
80    - Make the About Odin system menu item localizable.
81
820.8.4 (2012-03-19)
83------------------
84    - crypt32: Fix occasional crashes in CRYPT32.DLL (e.g. when playing back
85      some Flash contents).
86    - imm32: Initialize KERNEL32.DLL on DLL init (this fixes applications
87      that import IMM32 before KEREL32, e.g. latest OpenJDK builds).
88    - kernel32: Support guard page exceptions (this is used in OpenJDK
89      to implement yellow and red zones on the thread stack).
90    - kernel32: Align stack size interpretation in CreateThread() with MSDN
91      (this may fix "out of stack" exceptions in some applications).
92
930.8.3 (2012-02-07)
94------------------
95    - Add bldlevel info to all Odin DLLs and EXEs.
96    - Fix "Memory allocation failure" error when loading some Win32 EXEs with
97      PE/PEC.
98    - user32: Implement GetComboBoxInfo() needed for some apps.
99    - Fix crashes in CreateIconIndirect()/CreateIconFromResource()/LoadImage()
100      (seen in e.g. WinRAR).
101    - wgss: Fix broken GetFullPathName() that could lead to strange behavior.
102    - Add a bunch of API stubs referenced by the debug version of Flash DLL.
103    - shell32: Implement SHGetDiskFreeSpace[Ex]().
104    - user32: Make sure GetQueueStatus?() correctly reports QS_KEY state (this
105      fixes playback in focused windows in Flash versions above 10.0.45).
106    - kernel32: Implement SwitchToThread().
107    - Brush up log files in Odin debug builds (human readable timestamps,
108      output serialization, etc.).
109    - user32: Support MIIM_FTYPE/MIIM_STRING flags properly in InsertMenuItem()
110      and SetMenuItemInfo() (this e.g. fixes context menus in Flash > 10.0.45).
111    - Show Odin version number in the About Odin dialog.
112
1130.8.2 (2011-12-30)
114------------------
115    - Happy New Year everyone!
116    - Make PEC.EXE keep the console window attached (0.8.1 regression).
117    - Fix hang when loading KERNEL32.DLL from high-mem enabled applications
118      such as Firefox (0.8.1 regression).
119    - Fix crash when doing drag & drop in Odin applications (0.8.1 regression).
120    - winmm: Disable forceful termination of timer threads (this fixes frequent
121      hangs and crashes when playing Adobe Flash content in Firefox).
122    - winmm: Lower thread priority when calling timer functions.
123
1240.8.1 (2011-12-19)
125------------------
126
127    - Port Odin from from IBM VAC 3 to the modern GCC 4 compiler and kLIBC
128      runtime. This improves the stability by getting rid of the old and bogus
129      C runtime of IBM VAC.
130    - Increase the minor version number due to the compiler change.
131    - shlwapi: Enable SHAutoComplete() stub (needed for WinRar 4.x).
132    - kernel32: Add GetUserDefaultUILanguage() and VerifyVersionInfoW() (stub)
133      needed for newer Flash modules.
134    - Temporarily remove the win32k driver from the packages (not ready to be
135      built with the new build framework at the present time).
136
1370.7.1 (2011-09-30)
138------------------
139
140    - Increase the minor version number due to changing the installer to RPM.
141    - wgss: Add a hack to fix changing the current directory in CreateProcess
142      when starting the process of the same type.
143    - kernel32: CreateProcess: Add support for CREATE_UNICODE_ENVIRONMENT. This
144      fixes environment processing in Unicode mode (e.g. in OpenJDK).
145    - kernel32: GetFileAttributesEx: Accept paths with trailing slashes. This
146      fixes unexpected failures in e.g. SmartGit under OpenJDK.
147    - odininst: Create "Program Files" in WINDOWSDIR instead of drive root.
148
1490.6.21668 (2011-07-10)
150----------------------
151
152Dmitriy Kuminov:
153    - kernel32: SEH: Disabled unwinding Win32 exception handlers in response to
154      the OS/2 unwind procedure to prevent endless recursive crashes inside
155      OS2RtlUnwind() happening due to stack corruption under SMP kernel when too
156      many threads are being unwound at once (seen as a lot of c0010001 and
157      c0010002 exceptions in POPUPLOG.OS2 after application termination).
158    - kernel32: Fixed a regression in 0.6.21659 that caused crashes in DOSCALL1
159      when writing to memory mapped files. The wrong code path would incorrectly
160      invalidate memory pages on each write. This affected all OpenJDK apps.
161
1620.6.21659 (2011-06-27)
163----------------------
164
165Dmitriy Kuminov:
166    - kernel32: Fixed crashes in code involving _try/except due to garbage in
167      FS:[0].
168    - kernel32: GetFileAttributesEx?(): Interpret paths like 'X:' as 'X:\'
169      instead of reporting an error, for compatibility with Win32.
170    - kernel32: Propagate exceptions further along the OS/2 chain instead of
171      terminating the application if the last Win32 exception handler (eg the
172      SEH one) returns ExceptionContinueSearch. This lets unhandled exceptions
173      be seen by eg PROCDUMP.
174    - kernel32: SEH: Fixed rare crashes at process termination caused by
175      attempting to unwind the Win32 exception chain twice, the second time
176      after destroying the Win32 TEB block.
177    - kernel32: Fixed: Closing a duplicate of a handle opened with
178      FILE_FLAG_DELETE_ON_CLOSE would not perform file deletion as it should
179      if that duplicate was the last reference to the file (e.g. closed after
180      the original handle).
181    - ole32: Fixed a crash when dragging an object that doesn't support CF_TEXT
182      or CF_HDROP over an OS/2 (non-Odin) window.
183    - shell32: Fixed SHGetFileInfoW(): PIDL input argument was misinterpreted as
184      a string and the display name and type name fields SHFILEINFOW were not
185      properly set on output resulting in garbage on the caller's side.
186    - shell32: SHGetFileInfo(): Differentiate between different drive types
187      (network, local, removable etc) when filling the type name field for paths
188      like 'X:\'.
189    - user32: Fixed standard scroll bar functionality (stuck arrow and thumb
190      buttons) broken in February 2010.
191    - dsound: Open audio devices in shared mode to allow other processes play
192      sound when Java applications are running.
193    - wsock32: Don't start a dummy async thread when WSAEventSelect() is called
194      to simply cancel a non-existing association on a socket.
195    - wsock32: Fixed: Zeroing the async task structure at task termination would
196      prevent the VSemaphore destructor to be called which caused memory leaks.
197    - general: Show a nice error message box and exit instead of crashing if
198      WGSS50.DLL or KERNEL32.DLL initialization fails (eg due to low memory).
199
2000.6.21632 (2011-05-12)
201----------------------
202
203Dmitriy Kuminov:
204    - kernel32: Fixed: Parsing .SYM files when printing the stack trace in debug
205      mode was not thread safe which caused garbage and nested crashes.
206    - kernel32: SEH: Fixed a number of bugs in __try/__catch hangling that could
207      cause a bunch of various crashes when unwinding the Win32 exception chain
208      (usually at process termination, as a result of both a fatal exception or
209      a clean exit).
210    - kernel32: Do not use ODINCRT (VACRT) printf when handling XCPT_UNWIND in
211      debug mode since it's known to produce deadlocks.
212    - kernel32: To complete the Win32 exception chain unwind support, make sure
213      it is unwound when the thread terminates itself with ExitThread or
214      ExitProcess etc. before removing its exception handlers from stack.
215    - wgss: Added a hack that makes sure the system lock is released when the
216      thread terminates. This avoids deadlocks at process termination leading to
217      hanging non-killable zombie processes, which is especially frequent on SMP
218      systems.
219    - gdi32: Fixed broken TextOut? API family that would draw text flipped along
220      the base line.
221    - comdlg32: Made PrintDlg?() use the native PM print dialog instead of the
222      Win32 clone. This looks much more native and gives access to all printer
223      settings.
224    - minivcrt: Fixed _fullpath()/_wfullpath() which was broken in many regards
225      (i.e. it would eat path components starting with "." and "..").
226
2270.6.21606 (2011-03-28)
228----------------------
229
230Dmitriy Kuminov:
231    - general: Workaround the OS/2 loader bug in LIBPATHSTRICT=T mode by always
232      loading DLLs using the base name with no extension (e.g. "MDM" instead of
233      "MDM.DLL"). This fixes various problems like no sound in strict mode.
234    - general: A big bunch of fixes (headers and so on) for SDK mode.
235    - odincrt: Fixed a tiny typo in DosQueryModuleHandleStrict() that could
236      sometimes cause 100% CPU load at application startup eventually leading to
237      SYS1808 due to stack overflow.
238    - kernel32: VirtualQuery: Succeed with MEM_FREE for one page when querying
239      an unallocated address in the private arena (for which DosQueryMem fails
240      with ERROR_INVALID_ADDRESS). This will fix applications relying on proper
241      error reporting.
242    - kernel32: Report ERROR_MOD_NOT_FOUND from LoadLibrary() when it fails to
243      load a DLL due to missing import modules, to mimic Win32 behavior.
244    - tools/wrc: Restored generating GAS output by default. MASM output is now
245      generated by specifying the -M option.
246    - shell32: Shell_NotifyIcon(): Create a copy of the supplied icon because
247      the caller may DestroyIcon() on it at any time (which would cause systray
248      to display an empty rectangle). This matches Windows behavior.
249    - shell32: Implemented support for xsystray (Extended System Tray widget for
250      XCenter) which provides more functionality (in particular,
251      "TaskbarCreated" message broadcasting).
252
2530.6.21577 (2011-02-21)
254----------------------
255
256Dmitriy Kuminov:
257    - iphlpapi: Fixed a crash when building the adapter/interface/address tables
258      due to a bogus ioctl(SIOSTATRT) implementation in OS/2.
259    - kernel32: Implemented generating the high/low index values (using a CRC32
260      and a hash function on the fuill file name) and filling up the volume
261      serial number in a structure returned by GetFileInformationByHandle().
262    - kernel32: Implemented GetVolumePathName() API.
263    - kernel32: Disabled logging exceptions in release builds through RAS since
264      this involves .sym file reading and significantly slows down applications
265      that use exception handlers like traps for implementing application logic.
266    - kernel32: Fixed a bunch of OSLibDos* functions dealing with file names
267      that passed ANSI strings to the OS/2 APIs w/o first converting it to the
268      OEM codepage which caused "file not found" errors in various Win32 APIs
269      like GetFileAttributesEx() on file names Cyrillic, umlauts, etc.
270    - winmm: Accept handles returned by mixerOpen() as IDs in mixerGetDevCaps()
271      (according to MSDN) which fixes sound in applications using these IDs.
272    - dsound: Enumerate the default sound device twice in DirectSoundEnumerate()
273      (according to MSDN) to make applications relying on this work.
274
275Older Releases
276--------------
277
2782011-01-12: Dmitry A. Kuminov
279    - minivcrt: Use the own version of _fullpath() instead of the kLIBC one
280      because the latter isn't capable of resolving non-existent paths
281      (it allows only the last component to not exist) and it may also
282      unexpectedly change the current drive of the calling process.
283    - user32: Fixed national character input in a foreign process when an
284      Odin DLL attaches to it (such as Firefox and Flash 10) which was broken
285      in the previous release.
286    - user32: Fixed incorrect code page translation of window title text seen
287      in windows created on threads other than the main GUI thread.
288    - user32: Make GetQueueStatus() return actual message summary in high word
289      instead of the copy of the low word.
290    - user32: Fixed a crash during DnD when the dragged object was moved through
291      the title over the window frame.
292
2932010-12-30: Dmitry A. Kuminov
294    - Deduce Windows time zone from the current TZ setting.
295    - Lots of various fixes and improvements (to be specified later,
296      this is a test build).
297
2982010-09-06: Dmitry A. Kuminov
299    - Lots of various fixes and improvements (to be specified later,
300      this is a test build).
301
3022009-09-21  Andy Willis <abwillis1@gmail>
303        VAC365 updates.  Mostly done by Dietrich.  Couple by Steven Levine and some by myself.
304        src/odinprof/makefile
305        src/user32/Makefile
306        src/shell32/makefile
307        src/twain_32/makefile
308        src/imm32/makefile
309        src/winmm/mcicda/makefile
310        src/winmm/winmm.mak
311        src/dsound/dsmixer.cpp
312        src/dsound/makefile
313        src/ddraw/makefile
314        src/gdi32/makefile
315        src/winspool/winspool.cpp
316        src/winspool/makefile
317        src/win32k/win32k.tools.mk
318        src/win32k/win32k.mak
319        src/kernel32/kernel32.mak
320        src/kernel32/_ras.cpp
321        src/driverdll/makefile
322        src/libwrap/makefile
323        src/wnaspi32/makefile
324        src/capi2032/makefile
325        src/wsock32/makefile
326        src/odincrt/makefile
327        src/comdlg32/makefile
328        src/libwrap/libwrap0.mak
329        src/libwrap/libwrap1.mak
330
331
3322004-10-12: Chris Wohlgemuth <cinc@innotek.de>
333    - OLEAUT32:
334                o VarBstrFromDec() and VarDecFromStr() removed from stubs.cpp.
335                  These are now implemented in variant.c.
336
3372004-10-11: Chris Wohlgemuth <cinc@innotek.de>
338    - OLEAUT32:
339                o duplicate V_DECIMAL(A) macro removed
340
3412004-10-08: Chris Wohlgemuth <cinc@innotek.de>
342    - KERNEL32: Added RegOpenCurrentUser() to registry.cpp.
343    - OLE32:    ifs.c, Added some more comprehensive debug output to the IMalloc interface.
344                compobj.c, Added stub for CLSIDFromProgIDEx().
345    - OLEAUT32: o Added VT_R8 support to VarCmp (SvL)
346    - OLEAUT32: o Rewrote VarNumFromParseNum()
347                o Added VarDecFromStr() from Wine.
348                o VarParseNumFromStr() updated with Wine code
349                o Updated DECIMAL struct (include\win\windef.h) to Wine level.
350                o updated V_DECIMAL(A) macro (oleaut.h) to Wine level.
351    - OLEAUT32: variant.c, Added stubs for:
352                VarDecAdd()
353                VarDecMul()
354                VarDecSub()
355                VarDecAbs()
356                VarDecFix()
357                VarDecInt()
358                VarDecNeg()
359                VarDecRound()
360                VarDecCmp()
361                VarDecCmpR8()
362                VarOr()
363                VarNeg()
364                VarEqv()
365                VarIdiv()
366                VarAbs()
367                VarMod()
368                VarImp()
369                VarFix()
370                VarRound()
371                VarInt()
372                VarFormatNumber()
373                VarFormatPercent()
374                VarWeekdayName()
375                VarMonthName()
376
377            Added from Wine:
378                VarPow()
379                VarXor()
380                VarAdd()
381
382            safearray.c:
383            Added stubs for
384                SafeArrayGetRecordInfo()
385                SafeArraySetRecordInfo()
386                SafeArrayCreateEx()
387
388            Added from Wine:
389                SafeArraySetIID()
390                SafeArrayGetIID()
391
392
3932004-09-23: Chris Wohlgemuth <cinc@innotek.de>
394    -SHLWAPI:   Fix for PathSetDlgItemPathW() by D. Teickner so import of reg files with
395                W98-regedit works (taking sizeof(WCHAR) into account).
396
397 2002-06-16: Dmitry Froloff <froloff@os2   >
398    - GDI32:    o Fixed font creation for ANSI_CHARSET
399
400 2004-05-24: Eugene Romanenko <eros2@os2   >
401    - SHELL32:  o Systray integration with XWP
402
403 2004-05-24: KO Myung-Hun <komh@chollian    >
404    - GDI32:    o DBCS updates
405    - IMM32:    o Created OS/2 implementation
406    - KERNEL32: o DBCS/IMM updates
407    - USER32:   o DBCS/IMM updates
408
409 2003-05-11: Dietrich Teickner <Dietrich_Teickner@t-online   >
410    - USER32:   o Added wrappers for calling window handlers
411
412 2004-05-07: KO Myung-Hun <komh@chollian    >
413    - GDI32:    o DBCS updates
414
415 2004-05-06: Sander van Leeuwen <sandervl@innotek   >
416    - COMDLG32: o Update the hDevNames member of the printer dialog structure
417                  whenever the user chooses another printer
418
419 2004-05-03: knut st. osmundsen <bird-changelog@innotek    >
420    - USER32:   o Missing clipboard updates
421
422 2004-04-30: Sander van Leeuwen <sandervl@innotek   >
423    - COMDLG32: o Always turn off collate support
424    - GDI32:    o drawSingleLinePoint: wrong pen style checks
425
426 2004-04-27: Andy Willis <abwillis@comcast    >
427    - IMM32:    o Renamed to IMM32OS2
428
429 2004-04-19: knut st. osmundsen <bird-changelog@innotek    >
430    - USER32:   o Changed some critical sections which weren't initiated to
431                  VMutex to get automatic initialization.
432    - LIBWRAP:  o DosVerifyPidTid.
433
434 2004-04-15: Sander van Leeuwen <sandervl@innotek   >
435    - USER32:   o SetWindowPos: do not check for position and size redundancy
436
437 2004-04-08: knut st. osmundsen <bird-changelog@innotek    >
438    - INCLUDE:  o Merged wingdi.h from current WINE CVS.
439                o Added prototypes for new WGSS APIs.
440    - GDI32:    o Corrected a few problems due to wingdi.h merge.
441                o Corrected GetDIBits query mode.
442    - USER32:   o Rewrote clipboard code completely.
443
444 2004-04-07: Sander van Leeuwen <sandervl@innotek   >
445    - KERNEL32: o Profile: flush ini file after write actions
446
447 2004-04-06: Sander van Leeuwen <sandervl@innotek   >
448    - WINMM:    o Automatically disable audio support when any Crystal driver
449                  is detected
450    - KERNEL32: o Changed check for number of memory map views
451
452 2004-04-02: Sander van Leeuwen <sandervl@innotek   >
453    - KERNEL32: o ReadFile/WriteFile: wrong page calculation for memory maps
454
455 2004-03-25: Sander van Leeuwen <sandervl@innotek   >
456    - GDI32:    o LineTo: special case in toWin32LineEnd when inside a path
457                          definition
458
459 2004-03-24: Sander van Leeuwen <sandervl@innotek   >
460    - GDI32:    o CreateDIBitmap: added workaround for DIB_PAL_COLORS mode
461
462 2004-03-24: Vitali Pelenyov <sunlover@innotek   >
463    - KERNEL32: o GetVolumeInformation: check for file system buffer size
464
465 2004-03-23: Sander van Leeuwen <sandervl@innotek   >
466    - USER32:   o MapVirtualKeyA: must convert return value from PM to windows
467                  scancodes
468                o OSLibWinTranslateMessage: removed some strange numpad related
469                  hacks that caused problems for VK_DECIMAL processing
470
471 2004-03-22: Sander van Leeuwen <sandervl@innotek   >
472    - COMCTL32: o Rebar: changed resize fix again
473
474 2004-03-18: Sander van Leeuwen <sandervl@innotek   >
475    - USER32:   o RedrawWindow: ignore if window is not visible
476                o Dialog: use CallWindowProcA/W for calling the dialog procedure
477    - SHELL32:  o Allow shell links to be placed in arbitrary directories
478
479 2004-02-17: knut st. osmundsen <bird-changelog@innotek    >
480    - KERNEL32: o Fixed HEAP_strdupW.
481    - USER32:   o GpiCreateBitmap() sometimes read too much data, allocate more to
482                  prevent hitting the electric fence.
483
484 2004-03-17: Sander van Leeuwen <sandervl@innotek   >
485    - COMCTL32: o Merged latest Wine rebar and status controls
486                o Status: invalidate window if SBARS_SIZEGRIP and width or
487                          height changed
488                o Rebar: resize control to match parent width in WM_SIZE
489
490 2004-03-16: Vitali Pelenyov <sunlover@innotek   >
491    - ODINCRT:  o New os2 fast critical section implementation
492
493 2004-03-16: Sander van Leeuwen <sandervl@innotek   >
494    - USER32:   o Changed SPI_ICONHORIZONTALSPACING & SPI_ICONHORIZONTALSPACING
495                  to (75,75)
496    - WINMM:    o Check that we aren't overwriting existing data in case
497                  we get a lot more audio data than fits in our internal DART
498                  buffers.
499    - KERNEL32: o PROFILE_GetSection regression fix (heap corruption)
500    - COMCTL32: o Listview: merged with latest Wine code
501
502 2004-03-15: Sander van Leeuwen <sandervl@innotek   >
503    - USER32:   o GetKeyboardLayoutNameA; use only the low word returned by
504                  GetKeyboardLayout to build the keyboard layout string
505                o SystemParametersInfo: added SPI_ICONVERTICALSPACING &
506                  SPI_ICONHORIZONTALSPACING
507                o GetSystemMetrics: corrected SM_CXICONSPACING & SM_CYICONSPACING
508                o SystemParametersInfo: added SPI_SETDRAGFULLWINDOWS
509
510 2004-03-12: Sander van Leeuwen <sandervl@innotek   >
511    - SHELL32:  o Disabled Shell_NotifyIconA
512    - USER32:   o SPI_GETNONCLIENTMETRICS: corrected caption width and height
513                o WM_EXITSIZEMOVE should be sent after the window position
514                  and/or size has been changed.
515    - GDI32:    o SetDIBitsToDevice/StretchDIBits; set coloruse to DIB_RGB_COLORS
516                  for high (>=15) bpp bitmaps; GPI will crash with DIB_PAL_COLORS
517
518 2004-03-12: knut st. osmundsen <bird-changelog@innotek    >
519    - KERNEL32: o Added interface to HM for querying the object type.
520
521 2004-03-11: Sander van Leeuwen <sandervl@innotek   >
522    - USER32:   o More WH_MOUSE changes
523
524 2004-03-10: Sander van Leeuwen <sandervl@innotek   >
525    - USER32:   o Added support for WH_MOUSE hook
526
527 2004-03-09: Sander van Leeuwen <sandervl@innotek   >
528    - GDI32:    o SetDIBitsToDevice: fixes for xSrc offset
529
530 2004-03-09: Vitali Pelenyov <sunlover@innotek   >
531    - GDI32:    o SetDIBitsToDevice: fixes for partial blits
532
533 2004-02-27: Sander van Leeuwen <sandervl@innotek   >
534    - USER32:   o Re-assert DC transformation and y-inversion after SetWindowPos
535                o Fixed b&w mouse cursors
536    - GDI32:    o SetDIBitsToDevice: fixed bugs when dealing with negative height
537                o StretchDIBits: If biClrUsed equals 0, set it to (1<<bitcount)
538                                 Disabled DIB_PAL_COLORS workaround
539                o SetDIBitsToDevice: removed Matrix driver bug workaround;
540    - NETAPI32: o Removed all OS/2 Netbios dependencies
541
542 2003-02-24: Dietrich Teickner <Dietrich_Teickner@t-online   >
543    - KERNEL32: o CreateProcess fix
544
545 2004-02-23: Sander van Leeuwen <sandervl@innotek   >
546    - USER32:   o Backed out RedrawWindow change
547                o Edit: wrong ScrollWindowEx call; must include SW_ERASE
548                o ScrollWindowEx: set background erase flag for SW_ERASE
549
550 2004-02-20: Sander van Leeuwen <sandervl@innotek   >
551    - KERNEL32: o Default CPU is set to Pentium if the one in the system isn't recognized
552
553 2004-02-19: Sander van Leeuwen <sandervl@innotek   >
554    - USER32:   o RedrawWindow; wrong check for update region when clearing
555                  WM_ERASEBKGND flag.
556
557 2004-02-19: KO Myung-Hun <komh@chollian    >
558    - KERNEL32: o DBCS fixes for console & resource functions
559
560 2004-02-17: Sander van Leeuwen <sandervl@innotek   >
561    - GDI32:    o CreateDCA: special handling of FILE and FILE: ports
562
563 2004-02-16: KO Myung-Hun <komh@chollian    >
564    - USER32:   o Edit control: DBCS related fixes
565
566 2004-02-16: Sander van Leeuwen <sandervl@innotek   >
567    - USER32:   o EndPaint; fixed region handle leaks
568    - GDI32:    o Another region leak in GdiCombineVisRgnClipRgn fixed
569                o DIB Section: flush used the wrong RGB conversion
570
571 2004-02-13: Sander van Leeuwen <sandervl@innotek   >
572    - KERNEL32: o Allocate memory for the map during CreateFileMapping and
573                  free it when the map is destroyed
574
575 2004-02-12: Sander van Leeuwen <sandervl@innotek   >
576    - GDI32:    o PathToRegion failure bugfix + leak fixed
577                o SelectClipPath can fail in printer DCs. Pretend success.
578    - URLMON:   o Added HlinkNavigateString, CreateAsyncBindCtx & IsAsyncMoniker stubs
579
580 2004-02-11: Sander van Leeuwen <sandervl@innotek   >
581    - USER32:   o HODIN_PREWINDOWCREATEDA extension added
582
583 2004-02-10: Sander van Leeuwen <sandervl@innotek   >
584    - KERNEL32: o Added ODIN_SetProcessDword function to change the startup
585                  information about size, position and state of the main
586                  application window.
587                o Rewrote keyboard hook handler to post messages and swallow
588                  the one it gets from PM.
589    - GDI32:    o Wrong GdiCopyClipRgn return value
590                o Implemented SelectClipPath
591
592 2004-04-04: Platon Fomichev <pfomichev@alarity    >
593    - USER32:   o Fixed typo in PeekMessageA/W.
594
595 2004-01-30: knut st. osmundsen <bird-changelog@innotek    >
596    - USER32:   o AttachThreadInput implementation (read hack).
597    - OLE32:    o Drag & Drop fixes.
598                o Resynced ole2.c with current wine.
599    - various:  o Added DEBUG_LOGGING define to indicate logging in order to
600                  make release mode logging possible. Changed a few places where
601                  DEBUG were used to include/exclude logging related code.
602
603 2004-01-29: knut st. osmundsen <bird-changelog@innotek    >
604    - KERNEL32: o Parse LANG to figure out the language id.
605    - INCLUDE:  o Synced language IDs with current wine.
606                  This includes moving them from winnls.h to winnt.h.
607    - WRC:      o Synced lang2cps table with wine. (needed due to above header update)
608
609 2004-01-21: Sander van Leeuwen <sandervl@innotek   >
610    - USER32:   o DrawIconEx: handle cyWidth == 0 case correctly
611
612 2004-01-20: Sander van Leeuwen <sandervl@innotek   >
613    - KERNEL32: o Wrote wrapper for our exception handler to clear the direction
614                  flag on entry (reported by Dietrich Teickner)
615    - WINMM:    o MCIWAVE.DRV updates from Wine
616                o mciSendCommandW update from Wine
617                o Hardcoded MCI drivers (cdaudio & waveaudio)
618                o Added LGPL license file
619
620 2004-01-19: Sander van Leeuwen <sandervl@innotek   >
621    - USER32:   o Allocate DC for windows with CS_CLASSDC style (one per window)
622
623 2004-01-15: KO Myung-Hun <komh@chollian    >
624    - GDI32:    o Cleanup of text functions
625
626 2004-01-15: knut st. osmundsen <bird-changelog@innotek    >
627    - DBGWRAP:  o Added optional display of caller address.
628                  (Remove NO_CALLER #define)
629    - PE2LX:    o Process imports in Ring-3.
630    - KERNEL32: o Rewrote pe2lx classes to match pe2lx import changes.
631                o Made pe2lx classes use the generic export lookup.
632                o Rewrote the generic PE export lookup in the base class
633                  to use a binary search and support pe2lx images with
634                  differnet RVA calculation.
635                o Fixed a couple of COMMIT_ALL issues where pages were touched
636                  by winimagepeldr code before they were preloaded.
637    - USER32:   o Removed duplicate (and dangerous) checks on framewindows
638                  in a couple of enumerations (OSLibWinQueryClientWindow).
639    - MAKE:     o Warn about uninitialized variables for C++ code.
640                  (Looks like it give a lot of false warnings on C code, so
641                   let's skip it there.)
642
643 2004-01-14: KO Myung-Hun <komh@chollian    >
644    - GDI32:    o Fixed Ft2CharStringPosAtW(), passing lCount instead len.
645                o Modified Ft2GetTextExtentW(). Now use OSLibGpiQueryCharStringPosAt().
646                o Fixed InternalTextOutAW(). When using font association, the height of
647                  DBCS and SBCS chars may be different. In this case, background
648                  color make stair below chars.
649                o Fixed GetTextExtentPointA() and GetTextExtentExPointA() to support DBCS.
650
651 2003-01-11: Sander van Leeuwen <sandervl@innotek   >
652    - GDI32, USER32, KERNEL32:
653                o Major updates.
654
655 2004-01-08: KO Myung-Hun <komh@chollian    >
656    - GDI32:    o Fixed FONT_mbtowc(). If charset is 0, CP must not be 1252 in DBCS country.
657                o Restored calcDimensions(). The result of the old is the same as that
658                  of O32_GetTextExtent().
659
660 2003-12-29: KO Myung-Hun <komh@chollian    >
661    - GDI32:    o GetTextExtentPointW fix
662                o GetTextExtentExPointA fix for DBCS leadbytes
663
664 2003-12-29: Dietrich Teickner <Dietrich_Teickner@t-online   >
665    - GDI32:    o GetTextExtentPointW fix
666
667 2003-12-12: Dietrich Teickner <Dietrich_Teickner@t-online   >
668    - KERNEL32: o Fix for memory map offset
669
670 2003-12-01: KO Myung-Hun <komh@chollian    >
671    - GDI32:    o Use Warpsans Combined in DBCS environments
672    - SHLWAPI:  o Forward wvnsprintfA/W to user32
673    - USER32:   o wvsnprintfA/W: fixed ascii and unicode conversion
674                o Listbox: added index and length conversion between ANSI and UNICODE
675
676 2003-12-01: Dietrich Teickner <Dietrich_Teickner@t-online   >
677    - SHELL32:  o Fixed memory leak
678
679 2002-11-21: Dmitry Froloff <froloff@os2   >/Alex Samorukov (samm@os2.kiev   )
680    - KERNEL32: o Support for Ukrainian language added
681                o Unicode table updates
682    - USER32:   o Ukrainian resources added
683    - TOOLS\WRC:o Unicode table updates
684
685 2003-11-17: Sander van Leeuwen <sandervl@innotek   >
686    - USER32:   o Destroy switch entry before hiding window in DestroyWindow.
687                  (workaround for XCenter problems)
688    - SHELL32:  o Destroy icon cache imagelists in SIC_Destroy
689
690 2003-11-14: Sander van Leeuwen <sandervl@innotek   >
691    - USER32:   o Updates
692
693 2003-11-12: Sander van Leeuwen <sandervl@innotek   >
694    - GDI32/USER32:
695                o Clip/visible region changes
696
697 2003-11-12: Dietrich Teickner <Dietrich_Teickner@t-online   >
698    - SHELL32:  o Resource updates
699                o Shell file operations updates
700
701 2003-11-11: knut st. osmundsen <bird-changelog@innotek    >
702    - MAKE:     o Added a set of custombuild rules to the root makefile.
703
704 2003-10-30: Sander van Leeuwen <sandervl@innotek   >
705    - SHELL32:  o Wrong if statement in recent SHAddToRecentDocs patch
706
707 2003-10-24: Sander van Leeuwen <sandervl@innotek   >
708    - SHLWAPI:  o Removed wrong debug wrappers for forwarders
709    - WININET:  o Fixed initterm
710    - VERSION:  o Resync with Wine
711    - PEBUILD:  o Added
712
713 2003-10-25: knut st. osmundsen <bird-changelog@anduin    >
714    - MAKE:     o pe_*.obj changes for custombuilds.
715                o Custombuild objects goes into .\bin\<buildmode>.cust so it's
716                  possible to build both in the same tree.
717                o Don't build the src/custombuild directory as it's broken.
718
719 2003-10-22: Sander van Leeuwen <sandervl@innotek   >
720    - USER32:   o Use WC_FRAME for the Odin frame window and subclass it. There's
721                  some PM code that makes assumptions about frame window names.
722                o Updates for new keyboard hook
723    - PMKBDHK:  o Updates
724
725 2003-10-20: Sander van Leeuwen <sandervl@innotek   >
726    - USER32:   o PM windows should have no owner if none is specified. (instead
727                  of their parent)
728                  (NOTE: Potentially dangerous change!)
729
730 2003-10-20: Platon Fomichev <stauff@innotek   >
731    - USER32:   o On init we should migrate fonts that Windows applications
732                  installed globally.
733
734 2003-10-16: Sander van Leeuwen <sandervl@innotek   >
735    - SHELL32:  o CommandLineToArgvW bugfix from Wine
736    - ADVAPI32: o Check for valid SID pointer in LengthSid
737
738 2003-10-13: Platon Fomichev <stauff@innotek   >
739    - COMDLG32: o We should set/clear PD_PRINTTOFILE flag when we click on
740                  checkbox to change dialog print structure.
741
742 2003-10-13: Sander van Leeuwen <sandervl@innotek   >
743    - WINMM:    o Make sure the timer object is not deleted inside the timer
744                  callback handler
745
746 2003-10-06: Platon Fomichev <stauff@innotek   >
747    - USER32:   o Wrong class names (case) for Static, Scroller, Button.
748    - OLEAUT32: o GIF and JPEG static libs for IPicture interface implementation
749
750 2003-10-06: KO Myung-Hun <komh@chollian    >
751    - USER32:   o Fixed heap corruption when changing windows text (DBCS)
752
753 2003-10-01: Sander van Leeuwen <sandervl@innotek   >
754    - USER32:   o Clean up global critical section (window handles) during unload
755    - SHELL32:  o Added stubs for SHGetNewLinkInfoA/W
756
757 2003-10-01: Platon Fomichev <stauff@innotek   >
758    - USER32:   o CallWindowProcA/W: don't fail if window handle is invalid
759    - SHELL32:  o Add support for Unicode adding of files to 'recent document'
760    - COMCTL32: o Fixed bug when calling function by pointer in MRU funcs
761
762 2003-09-30: knut st. osmundsen <bird-odinspam@anduin    >
763    - CMDQD:    o Fixed code which messes with STD handles.
764
765 2003-09-18: KO Myung-Hun <komh@chollian    >
766    - KERNEL32: o fixed GetAtomNameW() and GlobalGetAtomNameW() to support
767                  unicode correctly. (DBCS)
768
769 2003-09-14: knut st. osmundsen <bird-odinspam@anduin    >
770    - MAKE:     o Synced with other projects using the new buildsystem (which
771                  odin doesn really use yet).
772    - TOOLS/BIN:o Updated BuildEnv.cmd. Will now facilitate a global config
773                  file in the ETC directory if not a local one is found.
774
775 2003-09-07: knut st. osmundsen <bird-odinspam@anduin    >
776    - LIBWRAP:  o Do all .asm's in with on ALP.
777
778 2003-08-22: Sander van Leeuwen <sandervl@innotek   >
779    - USER32:   o Ignore messages sent or posted to the desktop window
780                o Post/SendMessage: use shared or local memory depending
781                  on the target window.
782
783 2003-08-20: Sander van Leeuwen <sandervl@innotek   >
784    - USER32:   o Do not create CD polling window by default. It can cause
785                  PM hangs. (IOCtl blocks indefinitely)
786
787 2003-08-09: Sander van Leeuwen <sandervl@innotek   >
788    - IPLOG:    o Limit logfile size to 250 MB. When reached, reset file position
789                  to start of file.
790
791 2003-08-08: Sander van Leeuwen <sandervl@innotek   >
792    - TOOLS\CVTASM:
793                o Header parser and assembly wrapper generator
794    - LIBWRAP:  o Assembly wrappers for WGSS and OS/2 functions
795    - USER32:   o Update for libwrap
796
797 2003-08-07: KO Myung-Hun <komh@chollian    >
798    - USER32:   o Generate WM_IME_CHAR messages for DBCS input
799                o Process WM_IME_CHAR in Edit, Listbox, Combo controls and
800                  default window procedures
801
802 2003-08-06: Sander van Leeuwen <sandervl@innotek   >
803    - USER32:   o Cleaned up GetMessage/PeekMessage.
804                o Removed DispatchMessage change for WM_CHAR; must return
805                  the proper format in Get/PeekMessageA/W.
806                  (assuming the GetMessageW/DispatchMessageA combination is
807                   not allowed)
808
809 2002-08-06: Dmitry Froloff <froloff@os2   >
810    - KERNEL32: o HMDeviceConsoleOutClass::CreateFile; use current window size
811                  instead of default
812
813 2003-08-01: Sander van Leeuwen <sandervl@innotek   >
814    - USER32:   o Fixed SPI_GETWHEELSCROLLLINES
815    - AVICAP32: o Added stub dll from Wine
816    - KERNEL32: o Added InitializeCriticalSectionAndSpinCount from Rewind
817
818 2003-07-31: KO Myung-Hun <komh@chollian    >
819    - USER32:   o fixed GetMenuStringA() to truncate DBCS string correctly.
820                o fixed GetMenuItemInfo_common() to truncate DBCS string correctly.
821                o fixed WM_GETTEXT of Win32BaseWindow::DefWindowProcA() and
822                   Win32BaseWindow::DefWindowProcW() to ensure null-terminator.
823                o fixed Win32BaseWindow::GetWindowTextA() and Win32BaseWindow::GetWindowTextW()
824                  to ensure null-terminator.
825                o fixed memory allocation for windowNameW. When open 'Open common dialog box'
826                  memory block of windowNameW is overwritten.
827                o fixed MessageBoxIndirectW() to support unicode correctly.
828                o fixed OSLibWinDispatchMsg() to distinguish ascii message from
829                  unicode message in case of the message being sent directly
830                o fixed OS2ToWinMsgTranslate() to process DBCS input.
831                o fixed Win32BaseWindow::MsgChar() to distinguish ascii from unicode message.
832                o fixed Win32BaseWindow::MsgCreate(), Win32BaseWindow::DefWindowProcA(),
833                  Win32BaseWindow::DefWindowProcW() to process messages related to
834                  window name such as WM_GETTEXT, WM_GETTEXTLENGTH, WM_SETTEXT, and so on.
835                o fixed Win32BaseWindow::GetWindowTxtLength(), Win32BaseWindow::GetWindowTextA(),
836                  and Win32BaseWindow::GetWindowTextW() to process window name correctly.
837                o fixed DispatchMessageW() to call CallWindowProcW() not CallWindowProcA().
838                o fixed WINPROC_UnmapMsg32ATo32W(). len is first word of ptr not lParam on EM_GETLINE.
839                o changed a parameter WPARAC wParam to WPARAC *wParam of WINPROC_MapMsg32WTo32A() and
840                  WINPROC_UnmapMsg32WTo32A() to process WM_GETTEXT.
841                o fixed WINPROC_MapMsg32WTo32A(). When EM_GETLINE mapped, first word of lParam
842                  is ascii length not unicode length.
843                o improved WINPROC_CallProc32ATo32W() and WINPROC_CallProc32WTo32A() to process WM_CHAR
844                  and WM_GETTEXTLENGTH, LB-GETTEXTLEN, CB_GETLBTEXTLEN.
845                o fixed edit control to process WM_CHAR including splitted DBCS chars.
846                o fixed listbox control to process WM_CHAR including splitted DBCS chars.
847
848 2002-07-31: Dmitry Froloff <froloff@os2   >
849    - USER32:   o Convert WM_CHAR characters to UTF-16 for unicode windows
850
851 2003-07-28: Platon Fomichev <stauff@innotek   >
852    - WMC:      o Port of Wine Windows Message Compiler
853    - KERNEL32: o Fixed loading of unicode messages and added loading of
854                  internal ones. (message file from Rewind)
855
856 2003-07-28: knut st. osmundsen <bird-odin-spam@anduin   >
857    - USER32:   o Updates
858    - OLEPRO32: o Updates
859    - ODINCRT:  o Use fast method to query pid & tid in critical sections
860
861 2003-07-28: Sander van Leeuwen <sandervl@innotek   >
862    - USER32:   o Updates
863    - WINMM:    o Updates
864    - OLE32:    o Updates
865    - SHELL32:  o Return 'My Computer' when an applications asks for the
866                  'Network Places' shell32 object
867                o Filter out hidden files in CreateFolderEnumList if not wanted (Wine update)
868                o Also check for SFGAO_HASSUBFOLDER flag when deciding whether or
869                  not to clear SFGAO_FOLDER & SFGAO_HASSUBFOLDER!
870                  (---> submit to Wine)
871
872 2003-07-16: KO Myung-Hun <komh@chollian    >
873    - SHELL32:  o DragQueryFileW; allocate more for unicode conversion (DBCS)
874    - WINMM:    o Fixed mciGetErrorStringW() to prevent buffer overflow.
875                o Fixed midiInGetErrorText() and midiOutGetErrorText()
876                  to prevent buffer overflow.
877                o Fixed waveInGetErrorTextW() to prevent buffer overflow.
878                o Fixed waveOutGetErrorTextW() to prevent buffer overflow.
879    - GDI32:    o Fixed GetTextFaceW() to support unicode correctly. (DBCS)
880                o Fixed calcDimensions(). The width is one point - other point + 1
881                  (code currently not active)
882    - KERNEL32: o Added functions to query length after ascii or unicode conversion
883                o Changed the destination length parameter name of lstrcpynWtoA()
884                  and lstrcpynAtoW().
885
886 2002-07-16: Yuri Dario <mc6530@mclink   >
887    - INSTALL:  o Do not overwrite program files registry entry if it already
888                  exists and is valid.
889
890 2003-07-16: Dietrich Teickner <Dietrich_Teickner@t-online   >
891    - GDI32:    o Fix for partial blits in StretchDIBits
892
893 2003-07-14: KO Myung-Hun <komh@chollian    >
894    - GDI32:    o Fixed InternalTextOutW() and GetTextExtentPointW() to support
895                  unicode correctly. (DBCS)
896    - COMCTL32: o Fixed PROPSHEET_CollectSheetInfoA() and PROPSHEET_SetTitleA()
897                  to convert ascii to unicode correctly. (DBCS)
898                o Fixed TREEVIEW_TVItemFromItem() and TREEVIEW_BeginLabelEditNotify()
899                  to convert ascii to unicode correctly. (DBCS)
900                o Fixed TREEVIEW_SetItemW() to convert unicode to ascii correctly. (DBCS)
901
902 2003-07-11: Dietrich Teickner <Dietrich_Teickner@t-online   >
903    - SHELL32:  o Shell folder updates
904
905 2003-07-09: knut st. osmundsen <bird-odinspam@anduin    >
906    - MAKEFILES:o Invoke RC directly and not thru the CMDQD.
907
908 2002-07-07: Dmitry Froloff <froloff@os2   >
909    - PMKDBHK:  o Pass Alt-Shift on to PM (Russian language switch hotkey)
910
911 2003-07-03: Sander van Leeuwen <sandervl@innotek   >
912    - USER32:   o Free drag transfer structure after sending DM_RENDERCOMPLETE
913                o MapVirtualKey: when mapping VK_A-VK_Z, VK_0-VK_9 to their
914                  scancodes, use hardcoded character mapping for convertion.
915
916 2003-06-26: Platon Fomichev <stauff@innotek   >
917    - USER32:  o ShowWindow(SW_RESTORE) should start the same PM restoration
918                 routine as WM_SYSCOMMAND
919
920 2003-06-03: Sander van Leeuwen <sandervl@innotek   >
921    - USER32:   o Don't search for keyboard accelerators in the default
922                  WM_SYSKEYDOWN handler. That's already done in TranslateAccelerator
923                o Send focus messages when we receive the undocumented WM_FOCUSCHANGED
924                  PM message. Removes the need for the ugly hack to deal with
925                  nested focus changes.
926    - COMCTL32: o Rebar fix for recursive size changes
927
928 2003-06-02: Sander van Leeuwen <sandervl@innotek   >
929    - KERNEL32: o CreatePipe: create unique named pipe
930                o CreateNamedPipe: fixed return value + wrong check for duplex pipe
931
932 2003-05-29: Platon Fomichev <stauff@innotek   >
933    - COMCTL32: o Listview selection draw code was not ok with OS/2 look
934
935 2003-05-28: Platon Fomichev <stauff@innotek   >
936    - COMCTL32: o OWNERDRAW fixes for ListView control
937
938 2003-05-27: Sander van Leeuwen <sandervl@innotek   >
939    - USER32:   o Do not send WM_STYLECHANGING/ED messages when the scrollbar
940                  control is shown or hidden.
941                o PeekMessage fix (regression from 5-16)
942
943 2003-05-26: Sander van Leeuwen <sandervl@innotek   >
944    - COMCTL32: o Use the new resources from Wine.
945
946 2003-05-26: Platon Fomichev <stauff@innotek   >
947    - COMCTL32: o Listview selection draw code was incomplete due to resync.
948
949 2003-05-26: Platon Fomichev <stauff@innotek   >
950    - COMCTL32: o Patrick's 2001 fixes broke too much. Stay with ReWind for now.
951
952 2003-05-23: Sander van Leeuwen <sandervl@innotek   >
953    - KERNEL32: o ClearCommError: lpdwError is allowed to be NULL
954
955 2003-05-16: Sander van Leeuwen <sandervl@innotek   >
956    - USER32:   o Use our fast critical sections instead of OS/2 mutex semaphores
957                  in the timer code.
958                o Handle WM_(SYS)TIMER timer calls in DispatchMessageA/W.
959                  We previously called timer handlers when we received WM_TIMER
960                  from PM. That's not correct. These messages must be returned
961                  by Get/PeekMessage. The handler will not be called if the
962                  timer message is not dispatched. (verified in NT4)
963
964 2003-05-16: Platon Fomichev <stauff@innotek   >
965    - USER32:   o Eat first WM_MOUSEMOVE while menu tracking like windows does
966                  to prevent 'auto-clicking' on popup menus that appear in the
967                  area of first mouse-click
968
969 2003-05-15: Sander van Leeuwen <sandervl@innotek   >
970    - USER32:   o Window creation: updated the coordinate fix code with the latest Rewind version
971                o ReleaseDC: always verify window associated with DC
972    - COMCTL32: o Complete resync with latest Wine (except draglist)
973                o Implemented LVM_APPROXIMATEVIEWRECT for LVS_REPORT controls
974                  (needed to get rid of a crash; very likely to be incorrect)
975
976 2003-05-14: Sander van Leeuwen <sandervl@innotek   >
977    - GDI32:    o DIB section: do not fetch more colors from a bitmap header than
978                  biClrUsed (if != 0)
979                o GetDIBits: save and restore negative height & log failure
980    - USER32:   o Do not send any SetWindowPos related messages if the state
981                  of the window doesn't change.
982
983 2003-05-12: Sander van Leeuwen <sandervl@innotek   >
984    - KERNEL32: o _lopen: wrong parsing of mode parameter
985                  (only found now due to CreateFile changed with dwDesiredAccess)
986
987 2003-05-07: Sander van Leeuwen <sandervl@innotek   >
988    - USER32:   o Added more members to the TEB structure
989
990 2003-05-06: Sander van Leeuwen <sandervl@innotek   >
991    - KERNEL32: o Fixed closing of parent file handle by duplicate memory map
992                o Compare file names instead of handles when checking for
993                  duplicate file maps.
994    - USER32:   o ReleaseDC check if hwnd parameter is correct (WindowFromDC(hdc))
995                o Messagebox: Wrong ReleaseDC call
996
997 2003-05-06: knut st. osmundsen <bird-odin-spam@anduin   >
998    - KERNEL32: o Corrected the handling of OF_PARSE in OpenFile.
999
1000 2003-05-05: Sander van Leeuwen <sandervl@innotek   >
1001    - KERNEL32: o Handle files opened with 0 for dwDesiredAccess seperately.
1002                  Those handles can only be used with a limited nr of functions
1003                  (such as GetFileType/Size/Time)
1004    - IPHLPAPI: o Implemented GetIpAddrTable, GetIfTable & GetFriendlyIfIndex
1005
1006 2003-05-02: Sander van Leeuwen <sandervl@innotek   >
1007    - USER32:   o Keep track of all open window DCs
1008                o During WM_VRNENABLED we must query the visible region
1009                  of all open DCs to ensure that GPI updates the visible
1010                  region (e.g. when a window has moved).
1011                  A bug in PM/GPI causes open DCs to get out of sync when
1012                  moving windows with full window drag enabled.
1013                  (without full window drag there is no such problem due
1014                   to the use of LockWindowUpdate)
1015
1016 2003-04-30: Platon Fomichev <stauff@innotek   >
1017    - USER32:   o In WM_PARENTNOTIFY correctly map window coordinates for each
1018                  window we send this message to.
1019                  Correctly finish PM minimize sequence.
1020                  Correctly switch titlebar higlight on activate/deactivate.
1021
1022 2003-04-30: Dietrich Teickner <Dietrich_Teickner@t-online   >
1023    - SHLWAPI:  o Fixed PathIsUrlA/W
1024    - KERNEL32: o Changed dll renaming to include extension if it's not .dll
1025    - ODIN.INI: o Update for kernel32 change
1026                  (IMPORTANT: must update your odin.ini with this one or
1027                              delete the current file)
1028
1029 2003-04-27: Platon Fomichev <stauff@innotek   >
1030    - USER32:   o Correctly finish PM restore procedure from minimized state.
1031                o Use Stock brush for minimized icon fill when it is not
1032                  allocated.
1033
1034 2003-04-25: Sander van Leeuwen <sandervl@innotek   >
1035    - NTDLL:    o Initialize kernel32 first (circular dependency between
1036                  kernel32 & ntdll)
1037
1038 2003-04-25: knut st. osmundsen <bird-odin-spam@anduin   >
1039    - USER32:   o Fake window subclass FS bugfix.
1040
1041 2003-04-24: knut st. osmundsen <bird-odin-spam@anduin   >
1042    - USER32:   o Fake window init bugfixes
1043
1044 2003-04-24: Sander van Leeuwen <sandervl@innotek   >
1045    - USER32:   o EndDialog: Enable owner window regardless of whether it was
1046                             enabled before dialog creation. When the owner
1047                             is disabled and we hide the dialog, then PM switches
1048                             focus to another application. (hidden windows cannot
1049                             have focus)
1050                o Win32BaseWindow::GetWindowFromOS2Handle: also check fake
1051                  windows)
1052
1053 2003-04-24: Platon Fomichev <stauff@innotek   >
1054    - USER32:   o Fixed restore/maximize from minimized state for MDI windows.
1055
1056 2003-04-15: knut st. osmundsen <bird-odin-spam@anduin   >
1057    - USER32:   o Properties allocated from shared memory.
1058                o Fake window updates.
1059
1060 2003-04-15: knut st. osmundsen <bird-odin-spam@anduin   >
1061    - src/makefile:
1062                o Build NTDLL too. (netlabs only)
1063
1064 2003-04-14: knut st. osmundsen <bird-odin-spam@anduin   >
1065    - USER32:   o Implemented SW_SHOWDEFAULT.
1066    - KERNEL32: o Changed initialization of StartupInfo to take the actual
1067                  values of the CreateProcess call (but for the strings).
1068                  (not complete)
1069
1070 2003-04-11: knut st. osmundsen <bird-odin-spam@anduin   >
1071    - USER32, KERNEL32, include/win/thread.h:
1072                o Implemented WM_COPYDATA.
1073
1074 2002-04-11: Sander van Leeuwen <sandervl@innotek   >
1075    - USER32:   o Send WM_WINDOWPOSCHANGED for ShowWindow(SW_SHOWWINDOW)
1076                o Tool windows (WS_EX_TOOLWINDOW) don't have minimize or maximize
1077                  buttons. (testing shows this in NT4)
1078                o Changed default hittest handler to check for WS_EX_TOOLWINDOW
1079                  (system menu & min/max buttons)
1080                o MENU_TrackKbdMenuBar: check for WS_EX_TOOLWINDOW before using
1081                  the system menu.
1082                o Display tool window titlebars in win32 style. They are supposed
1083                  to be thinner than standard PM titlebar controls.
1084
1085 2003-04-11: Dmitry Froloff <froloff@os2   >
1086    - KERNEL32: o Console updates
1087
1088 2003-04-10: Platon Fomichev <stauff@innotek   >
1089    - MSVCRT  : o MSVCRT updates, forwarders to stdcall functions, lots of funcs
1090                  now directly imported from NTDLL, resync with latest Wine
1091    - EMXLIBS : o Added yet another wrapper for FS and added some funcs for new
1092                  msvcrt
1093    - INCLUDE : o OS2SEL functions corrected for potential optimizing problems
1094                  in release build. (Bug found and corrected by Dietrich)
1095
1096 2002-04-09: Sander van Leeuwen <sandervl@innotek   >
1097    - KERNEL32: o Unmap memory view when deleting PE dll object.
1098                  (problem found by Dietrich)
1099
1100 2003-04-09: Platon Fomichev <stauff@innotek   >
1101    - COMCTL32: o Due to flaw in cdecl implementation of GCC temporary
1102                  correctly import _wtoi func from NTDLL
1103    - EMXLIBS:  o Possible endless loop in OS2FS replacement funcs
1104                  (problem found by Dietrich)
1105
1106 2003-04-08: Platon Fomichev <platon@innotek   >
1107    - USER32:   o Treat LBUTTON press different from others in scrollbar. (WineX resync)
1108
1109 2002-04-08: knut st. osmundsen <Knut.Osmundsen@innotek   >
1110    - COMDLG32: o Corrected default printer init. It was crashing with big
1111                  printer setups and not handling multiple drivers per device
1112                  correctly.
1113
1114 2002-04-08: Sander van Leeuwen <sandervl@innotek   >
1115    - USER32:   o Menu control: do not paint default menu item strings in bold
1116                                if in OS/2 GUI mode
1117
1118 2003-04-04: Platon Fomichev <platon@innotek   >
1119    - NTDLL:    o Massive update. NTDLL internal tests, almost all
1120                  string and conversion funcs. Corrected and beautified .def file
1121    - DOC:      o Updated GCCBuildInstructions.txt for GCC 3.2.1
1122
1123 2003-04-03: Sander van Leeuwen <sandervl@innotek   >
1124    - WINMM:    o Different method for detecting DirectAudio (uniaud, sblive, c-media)
1125                o Added custom build function to disable DirectAudio (always use DART)
1126                o Waveout (DART): handle underrun properly (next buffer write
1127                  and position after continueing)
1128
1129 2002-04-02: knut st. osmundsen <bird-odin-spam@anduin   >
1130    - WIN32K:   o Win32VersionValue in OptionalHeader.
1131
1132 2002-04-02: Yuri Dario <mc6530@mclink   >
1133    - INCLUDE, GDI32, USER32, KERNEL32:
1134                o Corrected & changed headers + source updates
1135    - USER32:   o Button: WM_SETTEXT fix
1136
1137 2003-04-02: Platon Fomichev <platon@innotek   >
1138    - INCLUDE, KERNEL32:
1139                o Corrected HFILE definition as it is in Wine and in Win2k +
1140                  header updates.
1141    - INCLUDE\EMXRUNTIME:
1142                o Modified EMX headers
1143    - LIB\EMXSUPPORT:
1144                o Modified EMX libraries
1145
1146 2003-04-01: Sander van Leeuwen <sandervl@innotek   >
1147    - GDI32:    o Fix for partial dibsection resyncs
1148
1149 2003-04-01: Platon Fomichev <stauff@innotek   >
1150    - USER32:   o Functions for setting custom frame/cd/window class names
1151
1152 2003-03-31: Dietrich Teickner <Dietrich_Teickner@t-online   >
1153    - SHELL32:  o Shell file operations update
1154
1155 2003-03-31: Platon Fomichev <platon@innotek   >
1156    - KERNEL32: o Added vsnprintfW/snprintfW funcs for syncing with latest
1157                  wine NTDLL
1158
1159 2003-03-31: knut st. osmundsen <bird-odin-spam@anduin   >
1160    - PE2LX/WIN32K:
1161                o Custombuild feature for excluding dlls. Cleanups.
1162                o Option for making all object RW file.
1163    - KERNEL32: o Made Pe2Lx'ed DLLs work.
1164
1165 2003-03-28: Sander van Leeuwen <sandervl@innotek   >
1166    - USER32:   o Removed changes for window tracking (move/size) with full
1167                  window dragging enabled (2003-03-27)
1168
1169 2003-03-27: Sander van Leeuwen <sandervl@innotek   >
1170    - USER32:   o Don't change focus when processing mouse button message if
1171                  the top parent is a fake window
1172                o Changes for window tracking (move/size) with full window
1173                  dragging enabled
1174    - KERNEL32: o Memory map updates
1175
1176 2003-03-26: Sander van Leeuwen <sandervl@innotek   >
1177    - KERNEL32: o WaitForSingleObject/(Msg)WaitForMultipleObject fixes to
1178                  prevent thread priorities from being accidentally boosted to
1179                  time critical
1180
1181 2003-03-22: Sander van Leeuwen <sandervl@innotek   >
1182    - USER32:   o If an application doesn't validate the update region
1183                  while processing WM_PAINT, then we must remember it for
1184                  the next time.
1185                  Windows will only send a WM_PAINT once until another part of
1186                  the window is invalidated. Unfortunately PM keeps on sending
1187                  WM_PAINT messages until we validate the update region.
1188                  This affects UpdateWindow, RedrawWindow, GetUpdateRgn, GetUpdateRect,
1189                  BeginPaint and the next WM_PAINT message.
1190
1191 2003-03-20: Sander van Leeuwen <sandervl@innotek   >
1192    - USER32:   o WindowFromPoint: only send WM_NCHITTEST to windows belonging
1193                  to the current thread
1194                o Changes for fake windows. Moved them into a seperate C++ class
1195                  and overload some methods to correct the behaviour.
1196
1197 2003-03-18: Platon Fomichev <platon@innotek   >
1198    - USER32:   o Shift/Ctrl/Alt+Numpad keys illegal behaviour. Generic numpad
1199                  keys like (/*-+) produced garbage.
1200
1201 2003-03-12: Platon Fomichev <stauff@innotek   >
1202    - USER32:   o GetKeyState and GetAsyncKeyState fixes for numpad keyboard
1203
1204 2003-03-06: Sander van Leeuwen <sandervl@innotek   >
1205    - KERNEL32: o Don't change the stack alignment if the thread has less than
1206                  128 kb stack.
1207    - WINMM:    o Improved accuracy of waveIn/OutGetPosition. (use FPU to prevent
1208                  rounding errors)
1209                o Added code to dump played wave data to disk (disabled by default)
1210
1211 2003-03-06: knut st. osmundsen <Knut.Osmundsen@innotek   >
1212    - KERNEL32: o The WIN32LOG_FILEBASE env.var. can be used to point the logfile
1213                  elsewhere. "%d.log" is added to the value.
1214                o Print szLineExceptionType too in exception dump.
1215                o Custombuild apis for entering and leaving Odin thread context.
1216                o Added functions to quickly get the PID & TID
1217
1218 2003-03-05: knut st. osmundsen <bird-odin-spam@anduin   >
1219    - MAKE:     o Experimental OTHERS variable.
1220                o Full source path to compilers.
1221
1222 2003-03-05: Sander van Leeuwen <sandervl@innotek   >
1223    - WINMM:    o timeBegin/EndPeriod: check for upper and lower boundaries
1224                o waveoutGetPosition: return 0 if stream is not active (DART)
1225                o waveinGetPosition: return 0 if stream is not active (DART)
1226                o Don't print a warning for CALLBACK_NULL callbacks
1227                o Added ODIN_waveInSetFixedBuffers, renamed SetFixedWaveBufferSize
1228                  to ODIN_waveOutSetFixedBuffers. Used to tell WINMM to use
1229                  the waveOutWrite buffer size for the DART buffers.
1230                o Don't pause the wave stream if no buffers left to add. Let
1231                  DART detect the underrun condition.
1232
1233 2003-03-04: Platon Fomichev <stauff@innotek   >
1234    - USER32:   o We did not pay attention to numlock state on numpad keyboard.
1235
1236 2003-03-03: Dietrich Teickner <Dietrich_Teickner@t-online   >
1237    - GDI32:    o ExtTextOutA: copy string and force zero termination
1238    - SHELL32:  o Minor updates
1239
1240 2003-03-03: Sander van Leeuwen <sandervl@innotek   >
1241    - WSOCK32:  o Removed wrong checks for invalid address parameters in
1242                  sendto & recvfrom
1243
1244 2003-03-01: Sander van Leeuwen <sandervl@innotek   >
1245    - KERNEL32: o ExitProcess: turn off hard errors & exception popups before
1246                  calling O32_ExitProcess (release build only)
1247                o DeleteFile: when deleting a .lnk file, verify if it's a shell
1248                  link object file. if so, delete WPS object
1249                o ODIN_DisableFolderShellLink added: disable object creation in
1250                  Odin folder. Desktop shortcuts will still be created as WPS
1251                  objects on the desktop.
1252                o OSLibWinCreateObject: create shelllink file with WPS object id
1253    - USER32/KERNEL32:
1254                o Move OSLibWinCreateObject to KERNEL32
1255    - SHELL32:  o Shelllink: use kernel32 file functions instead of those from
1256                  the VAC crt
1257
1258 2003-02-28: Sander van Leeuwen <sandervl@innotek   >
1259    - SRC\makefile:
1260                o Skip msvcrt & crtdll for now. Causes too many problems with
1261                  Odin builds.
1262    - KERNEL32: o Fixed CreateProcessA regression (Lotus Notes)
1263                o Check for invalid data while measuring the CPU speed. DosTmrQueryTime
1264                  isn't very reliable (on laptops).
1265                o ExitProcess: don't remove our exception handler too early
1266                o Map ERROR_PATH_NOT_FOUND (OS/2) to ERROR_INVALID_NAME
1267    - WINMM:    o Protect linked timer list with VMutex object.
1268
1269 2003-02-28: knut st. osmundsen <Knut.Osmundsen@innotek   >
1270    - MAKEFILES:
1271                o New rule cleanall which tries to wipe out all the output.
1272                o ODIN32_LIB and ODIN32_BIN is now the same for all the CCENVs.
1273                  (AFAIK we no longer try compile stuff with many compiles, but
1274                   stick too the once which are working, VAC3 or EMX that is.)
1275                o Linenumbers in release mode.
1276                o Pass full source file names to compilers so the debugger easier
1277                  will find the the right source.
1278                o Defined STATIC_CRT in src/win32k/utils.
1279                o Profiling: Link with kProfile.lib when DEBUG= and PROFILE=1.
1280                  Configured this for EMX targets too. (state: Experimental)
1281
1282 2003-02-28: Platon Fomichev <stauff@innotek   >
1283    - USER32: o Wrong checks on restoration point remembering. Maximizing
1284                window from PM icon using keyboard or menu produced wrong
1285                controls.
1286
1287 2003-02-27: Sander van Leeuwen <sandervl@innotek   >
1288    - KERNEL32: o VirtualAlloc: fixed handling of commit for a page range
1289                  that is not entirely reserved (contains committed pages)
1290                o Don't call WinMessageBox in the unhandled exception filter as
1291                  that can hang PM.
1292
1293 2003-02-27: Platon Fomichev <stauff@innotek   >
1294    - USER32:   o Illegal PM sequence of maximizing from icon state corrected.
1295                  Inter-thread controls change caused PM lockups. Rewrote
1296                  PM window frame controls manipulation procedure.
1297
1298 2000-02-27: Achim Hasenmueller <achimha@innotek   >
1299    - KERNEL32: o MoveFile: detect if source and target file names are on a
1300                  different drive and use DosCopy/DosDelete instead of DosMove
1301                  in this case.
1302
1303 2003-02-26: Sander van Leeuwen <sandervl@innotek   >
1304    - RICHED32: o Rewrote control; no longer creates a child Edit window as this
1305                  doesn't happen in Windows and breaks subclassing
1306                o EM_CHARFROMPOS is different for RichEdit controls (lParam is
1307                  a POINTL pointer)
1308                o Implemented EM_FINDWORDBREAK
1309
1310 2003-02-25: Sander van Leeuwen <sandervl@innotek   >
1311    - USER32:   o Bugfix for WPS object creation
1312    - RICHED32: o Added support for EM_SETCHARFORMAT (text & background color)
1313                  & EM_SETBKGNDCOLOR.
1314
1315 2003-02-24: Sander van Leeuwen <sandervl@innotek   >
1316    - WS2_32:   o Implemented non-overlapped WSARecv & WSASend.
1317    - WSOCK32:  o check for local host name in gethostbyname. if identical,
1318                  then use "localhost" instead
1319    - KERNEL32: o GetFullPathNameA: don't change the input string
1320                o Added ODIN_IsWin32App export to determine whether an app
1321                  is a win32 or os2 binary.
1322    - USER32:   o Changes for creating WPS objects (win32/os2 app)
1323                o Added function to convert an icon group in memory
1324    - SHELL32:  o Convert win32 icon file to os2 format when creating a shell link.
1325
1326 2003-02-23: knut st. osmundsen <bird@anduin   >
1327    - TOOLS/ALIASDEF:
1328                o A tool for generating alias records from an .def file.
1329                  Something I wrote will playing with NTDLL here.
1330
1331 2003-02-22: Sander van Leeuwen <sandervl@innotek   >
1332    - WS2_32:   o Added WSARecv(From) & WSASend(To) stubs
1333
1334 2003-02-22: Platon Fomichev <stauff@innotek   >
1335    - USER32:   o Restoring maximized window from iconic state caused window
1336                  frame controls to behave badly. General out-of-sync problems
1337                  with frame controls. Invisibility of frame controls after
1338                  lots of minimizing/restoring.
1339
1340 2003-02-22: Dietrich Teickner <Dietrich_Teickner@t-online   >
1341    - SHELL32:  o Shell file operation updates
1342
1343 2003-02-20: knut st. osmundsen <Knut.Osmundsen@innotek   >
1344    - KERNEL32: o Added custombuild API for registering a callback for LX Dll
1345                  loading thru LoadLibrary*().
1346
1347 2003-02-18: Sander van Leeuwen <sandervl@innotek   >
1348    - KERNEL32: o Touch last stack page using ESP. (just in case)
1349                o Cleaned up memory map code.
1350
1351 2003-02-17: Sander van Leeuwen <sandervl@innotek   >
1352    - KERNEL32: o FindFirstFile: return ERROR_FILE_NOT_FOUND if DosFindFirst
1353                  returns ERROR_PATH_NOT_FOUND
1354    - USER32:   o Single Alt down + up always generates WM_SYSKEYUP; reset
1355                  iMenuSysKey on WM_KEYUP, so the system menu isn't accidentally
1356                  activated.
1357
1358 2003-02-16: Sander van Leeuwen <sandervl@innotek   >
1359    - USER32:   o ToAscii: fixed wrong checks for VK_SHIFT/CONTROL/MENU
1360                o Fixed broken implementation of GetKeyState, GetAsyncKeyState
1361                  and GetKeyboardState
1362                o Do not translate WM_KEYUP to WM_SYSKEYUP if AltGr released
1363                  and KC_LONEKEY flag is set. (only for Alt)
1364                o GetKeyboardState, GetKeyState, GetAsyncKeyState:
1365                  pretend left Ctrl key is pressed if AltGr down.
1366    - PMKBDHK:  o Special handling of AltGr key. Must send Ctrl key messages
1367                  like Windows.
1368
1369 2003-02-14: Dietrich Teickner <Dietrich_Teickner@t-online   >
1370    - SHELL32:  o Shell file operation updates
1371
1372 2003-02-13: Sander van Leeuwen <sandervl@innotek   >
1373    - USER32:   o Handle SetFocus(0) correctly: keystrokes are converted into
1374                  WM_SYSKEYDOWN/(WM_SYSCHAR)/WM_SYSKEYUP messages
1375                o DrawFocusRect: conflict between SetROP2(R2_XORPEN) and
1376                  SetBkMode(TRANSPARENT); commenting out the latter for now.
1377    - SHELL32:  o Control panel Wine resync
1378    - KERNEL32: o Added ODIN_SetTIBSwitch function to override TIB selector
1379                  switching.
1380                o Forward RtlZero/Move/FillMemory to ntdll
1381    - NTDLL:    o Cleaned up
1382
1383 2003-02-11: Sander van Leeuwen <sandervl@innotek   >
1384    - USER32:   o When a window is activated by a mouse click, we must set
1385                  focus to the client window (and not the frame!).
1386                o GetSysColor: always return cached colors
1387
1388 2003-02-10: Sander van Leeuwen <sandervl@innotek   >
1389    - KERNEL32: o Touch all stack pages we skip in the out of stack workaround for
1390                  16 bits code. Jumping over the guard page causes a protection
1391                  violation exception.
1392    - USER32:   o EnumThreadWindows: must return windows in Z-order
1393                  (experiments show EnumThreadWindows in NT4 behaves like this)
1394
1395 2003-02-07: Sander van Leeuwen <sandervl@innotek   >
1396    - DDRAW/NTDLL:
1397                o Rename resource directory
1398    - USER32:   o Don't save position (for restore) in SetWindowPos if window
1399                  is minimized .
1400
1401 2002-02-06: Dietrich Teickner <Dietrich_Teickner@t-online   >
1402    - USER32:   o Edit control: fixed heap corruption in undo buffer
1403
1404 2003-02-06: Sander van Leeuwen <sandervl@innotek   >
1405    - ODINCRT:  o Rewrote critical sections to be safe on SMP systems
1406                  (previous implementation had one flaw that happened
1407                   to be triggered often on my SMP machine)
1408    - USER32:   o Edit control: Always kill the timer if in captured state.
1409                  The app can call ReleaseCapture before we get the WM_LBUTTONUP
1410                  message.
1411                o Send WM_QUERYNEWPALETTE when a window receives focus
1412                o Translate WM_REALIZEPALETTE into WM_PALETTECHANGED
1413    - GDI32:    o Must manually correct y coordinates for DIB section blit since
1414                  we reset the y inversion back to 0.
1415                  (subtract twice the viewport & windows origin y)
1416                o CreateDIBSection: don't get palette from DC if bitmap bits provided
1417
1418 2003-02-05: Sander van Leeuwen <sandervl@innotek   >
1419    - KERNEL32: o Check ESP when calling the entrypoint of a newly created thread.
1420                  If close to a 64kb boundary, adjust it. Some ancient 16 bits
1421                  code will crash if there's not enough stack left.
1422
1423 2003-02-04: Sander van Leeuwen <sandervl@innotek   >
1424    - KERNEL32: o Support DuplicateHandle for threads
1425                o Fixed command line parsing regression
1426    - DDRAW:    o FS corruption in SetCooperativeLevel
1427
1428 2003-02-02: Sander van Leeuwen <sandervl@innotek   >
1429    - INCLUDE\makefiles:
1430                o Define STATIC_CRT for all exe targets
1431
1432 2003-01-30: Sander van Leeuwen <sandervl@innotek   >
1433    - KERNEL32: o CreateProcess changes for parsing the application name
1434                  and command line strings
1435
1436 2003-01-29: Sander van Leeuwen <sandervl@innotek   >
1437    - USER32:   o OS/2 Look & Feel is now default
1438                o Use OS/2 colors again in OS/2 L&F mode
1439
1440 2003-01-28: Sander van Leeuwen <sandervl@innotek   >
1441    - USER32:   o Don't use DrawFocusRect from WGSS anymore
1442    - GDI32:    o Fixes for InternalTextOutA without y-inversion (not activated)
1443
1444 2003-01-27: Platon Fomichev <platon@innotek   >
1445    - INCLUDE:  o Illegal calling convention specified for _System calling
1446                  convention in headers for GCC. Bugs in ASM code for SetFS
1447                  RestoreFS.
1448    - NTDLL:    o In C++ files specify extern "C" for _System calling convention
1449                  as well. Affected _DLL_InitTerm
1450
1451 2003-01-23: knut st. osmundsen <bird-odin-spam@anduin.net>
1452    - TOOLS\COMMON, TOOLS\WRC\U:
1453                o Define STATIC_CRT so wrapper headers doesn't kick in.
1454
1455 2003-01-23: Sander van Leeuwen <sandervl@innotek   >
1456    - INCLUDE\*.mk:
1457                o Don't use include\incl_vac for statically linked targets
1458                  (e.g. tools)
1459    - ODINCRT:  o Added wrappers for new & delete operators
1460    - ODINPROF, IPLOG, OLE32\REGSVR32;
1461                o Link with static CRT library
1462    - MAKE\setup.mak:
1463                o Only add include\incl_vac if not building an odin32 app
1464
1465 2003-01-23: Platon Fomichev <platon@innotek   >
1466    - DOC:      o Added build instructions for GCC
1467    - NTDLL:    o Made initntdll a C file to remove C++ GCC stuff for now
1468                  and added RtlBitmap support from Wine.
1469    - INCLUDE:  o Correced odinlx.h header - problem while compiling with
1470                  C compiler.
1471
1472 2003-01-22: Sander van Leeuwen <sandervl@innotek   >
1473    - ODINCRT:  o Renamed wrapper functions
1474    - INCLUDE\incl_vac:
1475                o Changed VAC headers to rename memory and file functions
1476                  (those that change FS when called)
1477    - MAKE, INCLUDE\*.mk:
1478                o Add include\incl_vac first to include path (/I)
1479    - KERNEL32: o Removed WriteLogError
1480
1481 2003-01-22: Platon Fomichev <platon@innotek   >
1482    - NTDLL:    o Dll load/unload changes
1483
1484 2003-01-21: Sander van Leeuwen <sandervl@innotek   >
1485    - DDRAW:    o Removed dependency on dive.dll. Load it on demand.
1486    - USER32:   o Moved debug wrapper for DDE to dde.cpp
1487
1488 2003-01-19: Sander van Leeuwen <sandervl@innotek   >
1489    - KERNEL32: o Only load LVM.DLL when we actually need it.
1490                o CreateProcess bugfix for thread id if launched directly
1491                o CreateFile returns ERROR_ALREADY_EXISTS if file not found
1492                  and CREATE_NEW
1493                o Check and correct process type in thread wrapper. WinCreateMsgQueue
1494                  fails for non-PM apps. We set it to PM in the VIO loader, but
1495                  apparently it can be changed back.
1496
1497 2003-01-18: Sander van Leeuwen <sandervl@innotek   >
1498    - KERNEL32: o FindFirstFile must return ERROR_FILE_NOT_FOUND when
1499                  the specified file or directory isn't present.
1500                  (OS/2 returns ERROR_NO_MORE_FILES)
1501
1502 2003-01-16: Sander van Leeuwen <sandervl@innotek   >
1503    - KERNEL32: o Fixed heap corruption in CreateProcess (with current dir)
1504    - USER32:   o Only the combo bitmap header is wrong; the others are fine
1505                  (regression from 2003-01-05)
1506
1507 2003-01-16: Platon Fomichev <platon@innotek   >
1508    - NTDLL:    o Changes for building dll with GCC
1509
1510 2003-01-15: Platon Fomichev <platon@innotek   >
1511    - MSVCRT:   o Updates
1512    - VERSION:  o Don't use crtdll
1513    - INCLUDE:  o Updates for GCC builds
1514
1515 2003-01-14: Sander van Leeuwen <sandervl@innotek   >
1516    - WINMM:    o Delete all wave object on unload
1517                o Fix linked list synchronization
1518
1519 2003-01-13: Sander van Leeuwen <sandervl@innotek   >
1520    - KERNEL32: o Don't allocate selectors anymore. Allocate tiled memory
1521                  and call Dos32FlatToSel.
1522                o Get default stack size from PE header.
1523                o Thread handles not closed properly.
1524
1525 2003-01-12: Sander van Leeuwen <sandervl@xs4all   >
1526    - KERNEL32: o Ported QueryDosDeviceA/W from Rewind
1527                  Return all valid drive letters in QueryDosDeviceA/W(NULL)
1528                  Return full device name for drive letters
1529                o Implemented IOCTL_SCSI_GET_CAPABILITIES
1530                o Do not fail CDIO init if media not present
1531
1532 2003-01-10: Sander van Leeuwen <sandervl@innotek   >
1533    - KERNEL32: o Don't close handle in CloseHandle if HANDLE_FLAG_PROTECT_FROM_CLOSE
1534                  flag set.
1535                o Implemented Set/GetHandleInformation
1536                o CreateFile: create handles that are not inherited by child
1537                              processes by default
1538                              Only enable inheritance if specified in security struct
1539                o Create(Named)Pipe: default = not inherited by child processes
1540                                     Only enable inheritance if specified in security
1541                                     struct.
1542                o DuplicateHandle; set inheritance flag with SetHandleInformation
1543                o CreateProcess: support for setting stdin/out/err handles
1544                                 of child process
1545                o PeekNamedPipe: - return ERROR_BROKEN_PIPE when used for unnamed
1546                                   pipes (which is not allowed in OS/2)
1547                                   (workaround)
1548    - USER32:   o ScrollDC bugfix; must convert rectangle returned by GetClipBox
1549                                   to device coordinates
1550
1551 2003-01-10: Platon Fomichev <platon@innotek   >
1552    - MSVCRT:   o Updates
1553    - CRTDLL:   o Wine port (forwarder dll to msvcrt)
1554
1555 2003-01-10: Herwig Bauernfeind <herwig.bauernfeind@aon   >
1556    - ODINBUG:  o Updated to version 0.5.8
1557
1558 2003-01-08: Sander van Leeuwen <sandervl@innotek   >
1559    - KERNEL32: o SetTimeZoneInformation: save info in registry:
1560                  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
1561                o GetTimeZoneInformation: read info from registery if present;
1562                  otherwise call WGSS
1563                o RegQueryValue(Ex)W: workaround to return bytes for strings
1564                  must always be executed when lpcbData != NULL.
1565
1566 2003-01-07: Sander van Leeuwen <sandervl@innotek   >
1567    - USER32:   o Convert color masks to b&w in CreateIconIndirect
1568    - RICHED32: o Don't forward WM_NCCALCSIZE to Edit control or else the
1569                  richedit parent's client area is resized. We already
1570                  resize the Edit child in the WM_SIZE handler.
1571                o Wrong call to ctordtorTerm; removed it and ctordtorInit
1572                  since there's no C++ code in that dll anyway.
1573    - ODININST: o Parse TZ environment variable and save timezone information
1574                  to the registry. (default is CET if not found)
1575
1576 2003-01-06: Sander van Leeuwen <sandervl@innotek   >
1577    - WSOCK32:  o Better method to cancel all async requests in WSACleanup
1578    - USER32:   o Invalidate window when it's resized and SWP_NOCOPYBITS
1579                  is specified.
1580                o Fixed icon leak in IconForWindow method (call LoadImageA
1581                  with LR_SHARED flag to reuse icons)
1582
1583 2003-01-06: Platon Fomichev <platon@innotek   >
1584    - ConfigureGCC.cmd,
1585      INCLUDE\win\msvcrt,
1586      INCLUDE\emx makefiles
1587      MSVCRT:
1588                o Wine port of MSVCRT (build with GCC)
1589
1590 2003-01-05: Sander van Leeuwen <sandervl@innotek   >
1591    - KERNEL32: o Added ODIN_SetDllLoadCallback; install a dll load hook
1592                  that's called as soon as all exports are processed
1593                  (so before any code is executed that can use the dll)
1594                o Added ODIN_SetProcAddress; override a name or ordinal export
1595    - USER32:   o Corrected wrong bitmap headers in resources
1596                o Added workaround for handling black & white cursors
1597
1598 2002-01-05: Dietrich Teickner <Dietrich_Teickner@t-online   >
1599    - USER32:   o Return MA_NOACTIVATE in listbox WM_MOUSEACTIVATE handler.
1600                  (apparently not necessary anymore in Wine; so probably
1601                   caused by something else)
1602
1603 2003-01-04: Sander van Leeuwen <sandervl@innotek   >
1604    - USER32:   o Corrected drawing of menubar in OS/2 L&F mode (when highlighted)
1605                o Fixed handling of single ALT to select menu
1606                o Use different color for highlighted menus (OS/2 L&F)
1607    - GDI32:    o Removed broken handling of TA_RIGHT in TextOut
1608                o Flip bitmap in GetDIBits if height is negative
1609                o Only return bitfield data in GetDIBits if compression set
1610                  to BI_BITFIELDS (and lpvBits is not NULL)
1611
1612 2003-01-03: Sander van Leeuwen <sandervl@innotek   >
1613    - USER32:   o Merged Rewind menu control
1614                o Fixed GetSystemMetrics(SM_CXMENUCHECK); should be 13
1615                o Always use windows system colors (even in OS/2 L&F mode)
1616
1617 2002-01-03: Dietrich Teickner <Dietrich_Teickner@t-online   >
1618    - KERNEL32: o Convert timezone names in Set/GetTimeZoneInformation as
1619                  WGSS expects/returns ascii strings instead of unicode.
1620
1621 2003-01-02: Sander van Leeuwen <sandervl@innotek   >
1622    - KERNEL32: o Set the codepage of the message queue for each new thread
1623                  that is created. (done for the main thread in user32)
1624    - USER32:   o Fix for composite keyboard character translation
1625                  (e.g. ^ on german keyboards)
1626                o SystemParametersInfoA fix for SPI_GETNONCLIENTMETRICS in
1627                  OS/2 L&F (font height must be negative)
1628                o Deactivate window when hiding it to force PM to switch focus.
1629                  (Note: might cause regressions!)
1630                o Fixed behaviour of SetFocus(NULL); should return the current
1631                  focus window.
1632
1633 2003-01-01: Sander van Leeuwen <sandervl@innotek   >
1634    - USER32:   o Fixes for windows with an iconless class and WS_EX_DLGMODALFRAME
1635                  style. (they shouldn't have a system menu)
1636                  (either right after creation or when the app add this extended
1637                   style later on)
1638                o Remove minimize or maximize controls when the app requests it
1639                  (OS/2 GUI mode)
1640    - GDI32:    o Cleaned up SetDIBitsToDevice
Note: See TracBrowser for help on using the repository browser.