- Use a CODE_ELEMENT structure in order to simplify the code.
- Do not do an on-place ansi to unicode conversion.
svn path=/branches/condrv_restructure/; revision=63766
Add diagnostics ASSERTs for MultiByteToWideChar & its companion (the source and target pointers must not be the same, otherwise it doesn't work).
svn path=/branches/condrv_restructure/; revision=63764
- Make kernel32 / winsrv console CSR structures Win2k3-compliant for Read/WriteConsoleCharacter/Attribute and FillConsoleOutputCharacter/Attribute functions.
The underlying CONSOLE_READOUTPUTCODE and CONSOLE_WRITEOUTPUTCODE structures are the same.
It should be noticed, as for the Read/WriteConsoleInput functions of r63754 and the other Read/WriteConsole*** functions, that for performance purposes Windows uses a local buffer for "small" sizes;
we should do the same too because both the client and the server use the number of elements to actually read/write in order to determine which buffer one should use (local or some shared buffer).
- Some memcpy --> RtlCopyMemory.
Part 7/X
CORE-7931
svn path=/branches/condrv_restructure/; revision=63755
- Make kernel32 / winsrv console CSR structures Win2k3-compliant for Read/WriteConsoleInput functions.
- Really fix some ASSERTS from r63108.
Part 6/X
CORE-7931
svn path=/branches/condrv_restructure/; revision=63754
Make kernel32 / winsrv console CSR structures Win2k3-compliant.
- Fix UNICODE and ANSI versions of the Alias and History APIs. Tested with unicode and ansi version of our doskey.exe
- Implement GetNumberOfConsoleMouseButtons.
Part 5/X
CORE-7931
svn path=/branches/condrv_restructure/; revision=63751
Make kernel32 / winsrv console CSR structures Win2k3-compliant.
The aim is to be able to put our kernel32.dll or winsrv.dll on win2k3, and vice-versa.
- Fix almost all the alias APIs and the history APIs. Unicode versions is OK, ANSI ones need correct fixes in server-side (see CORE-7931 for more details).
- Half-plement SetConsoleCommandHistoryMode (client-side OK, server-side unimplemented).
Part 4/X
CORE-7931
svn path=/branches/condrv_restructure/; revision=63194
- Move aliases & history management structures & initialization into the console server part.
- Maintain two different console lists, the first one for all the consoles (that are managed by the console driver) and the other for the consoles that are also owned by the console server.
- Simplify few function prototypes.
svn path=/branches/condrv_restructure/; revision=63141
Terminals are for consoles, and frontends for a given win32 terminal.
Start to clarify this situation in the code. Work in progress.
svn path=/branches/condrv_restructure/; revision=63123
- Move some functions where they belong.
- Start to differentiate frontends for consrv terminal, and terminals.
svn path=/branches/condrv_restructure/; revision=63117
Start refactoring:
- remove FASTCALL
- Add WINSRV_CONSOLE for keeping what makes sense only in Win32 consoles and not in consoles in general (keep in mind that the condrv part of this should go into kernel mode later on...)
therefore: move the wait queues into it, the pause flags (that are frontend-specific).
- Move process control from condrv.
svn path=/branches/condrv_restructure/; revision=63112