reactos.git
7 years ago[BASESRV]
Hermès Bélusca-Maïto [Fri, 18 Jan 2013 22:28:14 +0000 (22:28 +0000)]
[BASESRV]
Remove an unneeded comment.

svn path=/branches/ros-csrss/; revision=58190

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Wed, 16 Jan 2013 22:25:12 +0000 (22:25 +0000)]
[CONSRV]
Introduce new helper functions Win32CsrInitHandlesTable and Win32CsrAllocateConsole and use them in many places (in ConsoleConnect, SrvAllocConsole and SrvAttachConsole).

svn path=/branches/ros-csrss/; revision=58184

7 years ago[KERNEL32]
Hermès Bélusca-Maïto [Wed, 16 Jan 2013 00:16:06 +0000 (00:16 +0000)]
[KERNEL32]
Fix support for CONIN$ and CONOUT$, and add support for CON special file
(now, writing to C:\CON or C:\somepath\CONIN$ or C:\anotherpath\CONOUT$ works).

svn path=/branches/ros-csrss/; revision=58182

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Tue, 15 Jan 2013 00:10:01 +0000 (00:10 +0000)]
[CONSRV]
Code reorganization only.

svn path=/branches/ros-csrss/; revision=58178

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Tue, 15 Jan 2013 00:02:07 +0000 (00:02 +0000)]
[CONSRV]
- Temporary make the property dialog working again (but it's not the ultimate solution).
- in conio.h : members reorganization only.

svn path=/branches/ros-csrss/; revision=58177

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Sun, 13 Jan 2013 19:50:52 +0000 (19:50 +0000)]
[CONSRV]
- Finish to do the replacements HeapAlloc --> RtlAllocateHeap and Co.
- Finish to UNICODify consrv (it happens that it has been almost done already).
- Modify the way we start BlueScreen driver (in TUI mode): instead of using the SCM which, at that moment, is starting (and is not ready to answer to start/stop services requests), use the NT apis to start the driver (in the same way the SCM performs driver starting).
- Add a note on HAVE_WMEMSET.

svn path=/branches/ros-csrss/; revision=58169

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Sun, 13 Jan 2013 19:18:54 +0000 (19:18 +0000)]
[CONSRV]
HeapAlloc --> RtlAllocateHeap
HeapFree --> RtlFreeHeap
GetProcessHeap --> RtlGetProcessHeap

svn path=/branches/ros-csrss/; revision=58168

7 years ago[WINSRV]
Hermès Bélusca-Maïto [Sun, 13 Jan 2013 19:17:29 +0000 (19:17 +0000)]
[WINSRV]
Compile Winsrv as a win32dll UNICODE

svn path=/branches/ros-csrss/; revision=58167

7 years ago[KERNEL32]
Hermès Bélusca-Maïto [Sun, 13 Jan 2013 17:07:25 +0000 (17:07 +0000)]
[KERNEL32]
- Correct a error return code (in AllocConsole).
- Implement AttachConsole (inspired by AllocConsole).

[CONSRV]
- Correct a error return code (in AllocConsole).
- Introduce helper functions to simplify console-initialization code.
- Implement server-side of AttachConsole (I used pieces of code from ConsoleNewProcess, ConsoleConnect and SrvAllocConsole).

Some debug prints were introduced (for debug-purposes :P), will be removed when all things work.

TODO: have a look on the handles code.

svn path=/branches/ros-csrss/; revision=58166

7 years ago[CSRSRV]
Hermès Bélusca-Maïto [Sat, 12 Jan 2013 00:33:55 +0000 (00:33 +0000)]
[CSRSRV]
Initialize an uninitialized variable.

svn path=/branches/ros-csrss/; revision=58158

7 years agoSync with trunk r58151 to bring the latest changes from Amine and Timo.
Hermès Bélusca-Maïto [Wed, 9 Jan 2013 20:12:23 +0000 (20:12 +0000)]
Sync with trunk r58151 to bring the latest changes from Amine and Timo.

svn path=/branches/ros-csrss/; revision=58152

7 years ago[UNIATA]
Amine Khaldi [Wed, 9 Jan 2013 17:19:26 +0000 (17:19 +0000)]
[UNIATA]
* Sync to 0.44c3.
CORE-6649 #resolve #comment Committed in r58151. Thanks Alter ;)
CORE-6563

svn path=/trunk/; revision=58151

7 years ago[BOOTVID]
Timo Kreuzer [Wed, 9 Jan 2013 13:22:14 +0000 (13:22 +0000)]
[BOOTVID]
Rename a global variable to silence a VS analyze warning.

svn path=/trunk/; revision=58150

7 years ago[BOOTVID]
Timo Kreuzer [Wed, 9 Jan 2013 12:53:59 +0000 (12:53 +0000)]
[BOOTVID]
Fix support for CHAR_GEN_UPSIDE_DOWN

svn path=/trunk/; revision=58149

7 years ago[BOOTVID]
Timo Kreuzer [Wed, 9 Jan 2013 12:40:42 +0000 (12:40 +0000)]
[BOOTVID]
Rewrite DisplayCharacter. The new algorithm is much faster. It uses the VGA mask register to draws up to 8 pixels at once, completely getting rid of the inner loop. Pixel position / mask calculations and the check for opaque vs transparent background are moved out of the loops. The result is a single loop for the y coordinate containing an inlined __outbyte and memory write. A second loop in case of unaligned character writes.

svn path=/trunk/; revision=58148

7 years ago[BOOTVID]
Timo Kreuzer [Wed, 9 Jan 2013 09:48:02 +0000 (09:48 +0000)]
[BOOTVID]
Apply the following optimizations:
- include ioaccess.h to inline port access, instead of going through hal.
- Make __outpb and __outpw macros rather than stdcall function
- Make SetPixel FORCEINLINE
- Do not switch mode for every pixel we write, instead do it once before doing larger blt operations
- use __movsb instead of manual loop plus READ/WRITE_REGISTER_UCHAR
This noticeably improves performance.

svn path=/trunk/; revision=58147

7 years ago[BOOTLOGO]
Hermès Bélusca-Maïto [Wed, 9 Jan 2013 00:48:33 +0000 (00:48 +0000)]
[BOOTLOGO]
Softens the edges of the '3' digit

svn path=/trunk/; revision=58146

7 years ago[MSGINA]
Hermès Bélusca-Maïto [Wed, 9 Jan 2013 00:30:38 +0000 (00:30 +0000)]
[MSGINA]
Add the source login logo .svg file. To make the bitmap, export the .svg file in png, then save the png in Bitmap 24bits.

svn path=/trunk/; revision=58145

7 years ago--_'_-- \o/ Graphical Happy New Year 2013 (+ 9d) \o/ --_'_--
Hermès Bélusca-Maïto [Wed, 9 Jan 2013 00:03:50 +0000 (00:03 +0000)]
--_'_-- \o/ Graphical Happy New Year 2013 (+ 9d) \o/ --_'_--

Note to people:
~=~=~=~=~=~=~=~
- The msgina (login) logo is made from a .svg file. The copyright line text has font Lucida Sans Unicode (this font allows you to have the right length to the year-dash-separator). DejaVu Sans may also work. I would prefer to use the other logo used as the header for the ReactOS Welcome program (welcome.exe from the CD), but also it is given as a .bmp and I would like to have a .svg or some equivalent format to use it (with little modifications though) as a new login logo (in particular, rescaling it).
- Adjust the boot-logo year, also with the Lucida Sans Unicode font. This was done with Paint from Win2k3 (WARNING!! Not with Windows 7 Paint !!) because it keeps the palette of the opened bitmap, contrary to Windows7 one.
- If somebody has the original boot-logo file (a .svg, ..., something else?), then signal it to me !

svn path=/trunk/; revision=58144

7 years ago[CRT]
Timo Kreuzer [Tue, 8 Jan 2013 22:14:10 +0000 (22:14 +0000)]
[CRT]
- Use __debugbreak in _assert when user presses ignore in the message box
- Implement __crt_MessageBoxA and use it from _assert and abort
- Rewrite abort and _set_abort_behavior
- Add function headers and set BSD license for my code
- CORE-6594 #resolve

svn path=/trunk/; revision=58143

7 years ago* Addendum to r58141.
Amine Khaldi [Tue, 8 Jan 2013 20:34:19 +0000 (20:34 +0000)]
* Addendum to r58141.

svn path=/trunk/; revision=58142

7 years ago* Visual Studio IDE support bringup. We can now even compile bootcd/livecd...etc...
Amine Khaldi [Tue, 8 Jan 2013 20:33:08 +0000 (20:33 +0000)]
* Visual Studio IDE support bringup. We can now even compile bootcd/livecd...etc straight from the IDE.
* For anyone who wants to work only on a certain module (or a set of modules), you can add "project(module)" to the related CMake file. This will generate a solution that contains all the required dependencies needed to compile only that module, without having to open a huge solution with 900+ projects.
* We'll create a wiki page to explain how to use this in detail.
* Dedicated to all VS users. Have fun ;)

svn path=/trunk/; revision=58141

7 years agoPrecision: r58138 was part 2a/3 of my changes.
Hermès Bélusca-Maïto [Tue, 8 Jan 2013 00:35:26 +0000 (00:35 +0000)]
Precision: r58138 was part 2a/3 of my changes.

[KERNEL32-RAMDISK]
Continue to use the new debugging macros introduced in r58132.

Part 2b/3

svn path=/trunk/; revision=58140

7 years ago[SAL]
Timo Kreuzer [Mon, 7 Jan 2013 22:40:52 +0000 (22:40 +0000)]
[SAL]
Try to fix MSVC analyze

svn path=/trunk/; revision=58139

7 years ago[NTOSKRNL-CMLIB]
Hermès Bélusca-Maïto [Mon, 7 Jan 2013 22:11:06 +0000 (22:11 +0000)]
[NTOSKRNL-CMLIB]
Continue to use the new debugging macros introduced in r58132.

svn path=/trunk/; revision=58138

7 years ago[REACTOS]
Hermès Bélusca-Maïto [Sun, 6 Jan 2013 23:50:52 +0000 (23:50 +0000)]
[REACTOS]
I hope this solution will work *sigh*

svn path=/trunk/; revision=58137

7 years ago[REACTOS]
Hermès Bélusca-Maïto [Sun, 6 Jan 2013 23:42:25 +0000 (23:42 +0000)]
[REACTOS]
Attempt to fix compilation by lying at NDK.

svn path=/trunk/; revision=58136

7 years ago[REACTOS]
Hermès Bélusca-Maïto [Sun, 6 Jan 2013 23:29:05 +0000 (23:29 +0000)]
[REACTOS]
- Fix the debugging macros I've introduced in r58132; in particular do not use while(true); for forbidding the user to continue execution, but instead raise an exception with EXCEPTION_NONCONTINUABLE flag (included when called RtlRaiseStatus).
- Adjust the definition of RtlRaiseStatus (in kernel-mode it is ExRaiseStatus which is used).

svn path=/trunk/; revision=58135

7 years ago[TRANSLATION]
Olaf Siejka [Sun, 6 Jan 2013 22:38:20 +0000 (22:38 +0000)]
[TRANSLATION]
- romanian translation update by Stefan Fulea; CORE-6718
- fix for japaneese cmd translation by Tomoya Kitagawa; CORE-6820
- polish translation update of desk and input;

svn path=/trunk/; revision=58134

7 years ago[RTL]
Thomas Faber [Sun, 6 Jan 2013 20:52:02 +0000 (20:52 +0000)]
[RTL]
- Use correct registry value names for time zone information

svn path=/trunk/; revision=58133

7 years ago[REACTOS]
Hermès Bélusca-Maïto [Sun, 6 Jan 2013 18:47:39 +0000 (18:47 +0000)]
[REACTOS]
Introduce four new debugging macros, ERROR_DBGBREAK, ERROR_FATAL, UNIMPLEMENTED_DBGBREAK, UNIMPLEMENTED_FATAL (and two helpers, __NOTICE and __ERROR_DBGBREAK).
They are designed to display on the debug-log a printf-like user-defined message and to break into the debugger.
- The *_DBGBREAK macros break only into the debugger and allow to continue (they don't hang).
- The *_FATAL macros break into the debugger and then halt the execution.

(Based on an idea of Aleksey Bragin, see the ros-dev mailing list about the while(true) --> assert(false); changes).

[NTOSKRNL]
Use these macros instead of ASSERT(FALSE); introduced in revisions r58110, r58111 and r58112 to replace while(TRUE); halts.

Part 1/3

svn path=/trunk/; revision=58132

7 years ago[RPCRT4][SHDOCVW]
Thomas Faber [Sun, 6 Jan 2013 14:32:46 +0000 (14:32 +0000)]
[RPCRT4][SHDOCVW]
- Add missing __WINESRC__ definitions. Fixes some warnings.
CORE-6784 #resolve

svn path=/trunk/; revision=58131

7 years ago[NETAPI32]
Eric Kohl [Sun, 6 Jan 2013 14:24:40 +0000 (14:24 +0000)]
[NETAPI32]
- NetUserGetInfo: Add Support for info level 23.
- Convert UserAccountControl flags to user info flags and convert last logon, last logoff and account expires time.

svn path=/trunk/; revision=58130

7 years ago[PSDK]
Eric Kohl [Sun, 6 Jan 2013 13:22:47 +0000 (13:22 +0000)]
[PSDK]
Add missing types USER_INFO_4 and USER_INFO_23.

svn path=/trunk/; revision=58129

7 years ago[SAMSRV]
Eric Kohl [Sun, 6 Jan 2013 13:03:01 +0000 (13:03 +0000)]
[SAMSRV]
SAM Setup: Set the UserAccountControl flags when user accounts are created.

svn path=/trunk/; revision=58128

7 years ago[EXPLORER_NEW]
Thomas Faber [Sun, 6 Jan 2013 12:04:48 +0000 (12:04 +0000)]
[EXPLORER_NEW]
- Open run dialog when Win+R was pressed. Patch by Edijs Kolesnikovičs.
CORE-6863 #resolve

svn path=/trunk/; revision=58127

7 years ago[TIMEDATE]
Thomas Faber [Sun, 6 Jan 2013 11:37:11 +0000 (11:37 +0000)]
[TIMEDATE]
- Correctly show current time zone name even if no daylight saving settings are set. Patch by Lee Schroeder.
CORE-6803 #resolve #comment Fixed, thanks. Sorry for the long wait.

svn path=/trunk/; revision=58126

7 years ago[NETAPI32]
Eric Kohl [Sun, 6 Jan 2013 10:45:46 +0000 (10:45 +0000)]
[NETAPI32]
Fix indentation. No code changes!

svn path=/trunk/; revision=58125

7 years ago[EXPLORER_NEW]
Thomas Faber [Sun, 6 Jan 2013 10:36:49 +0000 (10:36 +0000)]
[EXPLORER_NEW]
- Move "Show window previews (thumbnails)" option to advanced tab, as it doesn't exist in Windows. Patch by Edijs Kolesnikovičs.
CORE-6840 #resolve

svn path=/trunk/; revision=58124

7 years ago[EXPLORER_NEW]
Thomas Faber [Sun, 6 Jan 2013 10:12:39 +0000 (10:12 +0000)]
[EXPLORER_NEW]
- Plug a memory leak in IDropTargetImpl
- Do not allocate 64x the required space in TaskSwitchWnd_AllocTaskItem
- Properly free and unregister the tray window
- Fix a few more style issues

svn path=/trunk/; revision=58123

7 years ago[EXPLORER_NEW]
Thomas Faber [Sun, 6 Jan 2013 10:08:10 +0000 (10:08 +0000)]
[EXPLORER_NEW]
- Correctly load and save advanced setting(s). Patch by Edijs Kolesnikovičs.
CORE-6835 #resolve

svn path=/trunk/; revision=58122

7 years ago[CSRSRV]
Hermès Bélusca-Maïto [Sun, 6 Jan 2013 00:05:09 +0000 (00:05 +0000)]
[CSRSRV]
Check for NULL parameter in the function CsrLocateThreadByClientId. Triggered when it was called by CsrApiHandleConnectionRequest during tests (the call to CsrLocateThreadByClientId happens in line 146 of api.c).

svn path=/branches/ros-csrss/; revision=58121

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Sat, 5 Jan 2013 23:37:04 +0000 (23:37 +0000)]
[CONSRV]
Renaming CSRSS_... structures into CONSOLE_...

svn path=/branches/ros-csrss/; revision=58120

7 years ago[KERNEL32-CONSRV]
Hermès Bélusca-Maïto [Sat, 5 Jan 2013 23:10:12 +0000 (23:10 +0000)]
[KERNEL32-CONSRV]
Rename some structures (CSRSS_... ---> CONSOLE_...) and clarify what the ConsoleHandle members are for (--> OutputHandle or InputHandle).
No code changes otherwise.

svn path=/branches/ros-csrss/; revision=58119

7 years ago[NETAPI32]
Eric Kohl [Sat, 5 Jan 2013 21:04:54 +0000 (21:04 +0000)]
[NETAPI32]
Add information level 2 and 3 for NetUserEnum and NetUserGetInfo.

svn path=/trunk/; revision=58118

7 years ago[SAMSRV]
Eric Kohl [Sat, 5 Jan 2013 20:30:06 +0000 (20:30 +0000)]
[SAMSRV]
Implement SamrQueryInformationUser.UserParametersInformation and set the Parameters attribute when a new user is created.

svn path=/trunk/; revision=58117

7 years ago[WIN32K]
Timo Kreuzer [Sat, 5 Jan 2013 19:57:59 +0000 (19:57 +0000)]
[WIN32K]
In NtGdiStretchDIBitsInternal check early for info dc / mem dc without surface, only allocate memory and copy bits if the caller actually passed bits (they are optional), free the allocation, when an exception happens instead of leaking the memory.

svn path=/trunk/; revision=58116

7 years ago[REACTOS]
Aleksey Bragin [Sat, 5 Jan 2013 11:05:23 +0000 (11:05 +0000)]
[REACTOS]
- Happy New Year! This one is better than r54799 which is a good progress!

svn path=/trunk/; revision=58115

7 years agoSync with trunk r58113.
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 13:36:15 +0000 (13:36 +0000)]
Sync with trunk r58113.

svn path=/branches/ros-csrss/; revision=58114

7 years ago[TASKMGR]
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 13:26:34 +0000 (13:26 +0000)]
[TASKMGR]
Fix a misspelling in French translation.

svn path=/trunk/; revision=58113

7 years agowhile (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE...
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 12:54:39 +0000 (12:54 +0000)]
while (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE); and in some cases, return an adequate value.

Part 2/2

Some while(true); remain in our code, however not in critical regions.

svn path=/trunk/; revision=58112

7 years agowhile (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE...
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 12:31:46 +0000 (12:31 +0000)]
while (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE); (unless we deal with a 'noreturn' function),
and in some cases, return an adequate value. In some places however, I add an ASSERT(FALSE); before keeping the while (TRUE); in critical regions.

(Only x86, as well as in r58110). More ASSERTS (in debug mode) or BSODs may appear, instead of having hung threads.

Part 1-bis/2

svn path=/trunk/; revision=58111

7 years agowhile (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE...
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 11:47:19 +0000 (11:47 +0000)]
while (TRUE); (when something is unimplemented) ---> ASSERT(FALSE); // while (TRUE); (unless we deal with a 'noreturn' function),
and in some cases, return an adequate value.

Part 1/2

svn path=/trunk/; revision=58110

7 years ago[WIN32K]
Timo Kreuzer [Fri, 4 Jan 2013 11:02:43 +0000 (11:02 +0000)]
[WIN32K]
Implement DC_hSelectFont, use it from NtGdiSelectFont and GdiFlushUserBatch. Make sure plfnt is != NULL before dereferencing it in "TEXTOBJ_LockText"

svn path=/trunk/; revision=58109

7 years ago[NTOSKRNL]
Timo Kreuzer [Fri, 4 Jan 2013 01:06:51 +0000 (01:06 +0000)]
[NTOSKRNL]
Implement protection changing in NtAllocateVirtualMemory.
Fixes "Assertion 'ChangeProtection == FALSE' failed"

svn path=/trunk/; revision=58108

7 years ago[WIN32K]
Hermès Bélusca-Maïto [Fri, 4 Jan 2013 00:41:10 +0000 (00:41 +0000)]
[WIN32K]
- Start to implement NtUserConsoleControl to allow the console server define Console Window Class atom.
- In UserInitialize, initialize the current thread by a call to UserCreateThreadInfo.
- In UserCreateThreadInfo, set the TIF_CSRSSTHREAD flag for threads created by CSRSS.
- In NtUserQueryWindow, when querying the process/thread ID associated to a given window, check whether the window was created by CSRSS and if so, if this is a Console window, get the process/thread ID of the associated console process (console leader process), instead of the CID of CSRSS.

[CONSRV]
- Introduce the concept of console leader process (to be used as the process owning the console window).
- Introduce extra console window information to store the PID and TID of the console leader process via new internal flags to be used by GetWindowLong.
- Effectively set the console window console leader CID at its creation.
- Improve CsrInitConsole to set a console leader process to the console being created.

This fixes http://jira.reactos.org/browse/CORE-122 in this branch.

[CONSRV-WIN32K]
Fix various code misspellings.

svn path=/branches/ros-csrss/; revision=58107

7 years ago[INCLUDE]
Timo Kreuzer [Thu, 3 Jan 2013 20:56:00 +0000 (20:56 +0000)]
[INCLUDE]
Delete obsolete files

svn path=/trunk/; revision=58106

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Thu, 3 Jan 2013 17:47:34 +0000 (17:47 +0000)]
[CONSRV]
Revert unwanted changes brought accidentally in r58104.

svn path=/branches/ros-csrss/; revision=58105

7 years ago[KERNEL32]
Hermès Bélusca-Maïto [Thu, 3 Jan 2013 17:42:27 +0000 (17:42 +0000)]
[KERNEL32]
Silent more debug prints and remove an unused DPRINT1 I've introduced in r57666.

svn path=/branches/ros-csrss/; revision=58104

7 years ago[BASESRV]
Hermès Bélusca-Maïto [Thu, 3 Jan 2013 17:18:19 +0000 (17:18 +0000)]
[BASESRV]
Remove a temporary DPRINT1.

[CSRSRV]
- Shut down debug output.
- Fix some misspellings.
- Fix a bug in CsrMoveSatisfiedWaits ("satisfied" waits are waits where WaitFunction was put to NULL during a previous call to CsrNotifyWait, but still not dereferenced, and which can be dereferenced by a call to CsrDereferenceWait).

svn path=/branches/ros-csrss/; revision=58103

7 years ago[WIN32K]
Timo Kreuzer [Thu, 3 Jan 2013 08:45:00 +0000 (08:45 +0000)]
[WIN32K]
Handle references to DC selected fonts, so we don't leak them or use fonts that are already deleted.

svn path=/trunk/; revision=58102

7 years ago[WIN32K]
Timo Kreuzer [Wed, 2 Jan 2013 14:52:34 +0000 (14:52 +0000)]
[WIN32K]
Revert the revert from r58091 and apply a correct fix (passed parameters to RECTL_vSetRect() in wrong order)

svn path=/trunk/; revision=58101

7 years ago[GDI32]
Timo Kreuzer [Wed, 2 Jan 2013 10:54:54 +0000 (10:54 +0000)]
[GDI32]
Set correct last error code in GetClipRgn. Fixes regression from r58089.

svn path=/trunk/; revision=58099

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Wed, 2 Jan 2013 00:32:20 +0000 (00:32 +0000)]
[CONSRV]
- Fix console apps initialization.
- Add some debug output (NOTE TO MYSELF: remove them when all things work).
- Rewrite ConsoleNewProcess.
- Reorganize SrvAllocConsole and create ConsoleConnect based on SrvAllocConsole.
- Create ConsoleDisconnect which undoes what ConsoleConnect and ConsoleNewProcess did.
- Rework a little bit CsrInitConsole.

Now the console app. initialization algorithm is the following:

1- A process is created, its type (GUI or CUI) is determined (kernel32 and basesrv).
2- ConsoleNewProcess is called (consrv) and makes this new process inherit the console handles table from its parent
   (NOTE: this is done for all CUI processes, because at this point, we still don't know whether we must inherit
   the handles from the parent or not).
3- (back in kernel32) In BasepInitConsole, we determine whether or not we must create a new console window or use
   the parent's one or not using one at all. We (as a client) connect to the console server (consrv) (via CsrClientConnectToServer)
   which in turn (via CSRSS mechanism) calls ConsoleConnect. For GUI processes we do nothing. For CUI processes, we initialize
   a new console based on properties set in BasepInitConsole.
4- When a process dies, ConsoleDisconnect is called and whether it is a GUI or CUI process, we revert the actions done previously.

Part 2/2

TODO: - Debug the CSR waits.
      - Work on the console properties property-sheet.
      - See what can be done on http://jira.reactos.org/browse/CORE-122

svn path=/branches/ros-csrss/; revision=58098

7 years ago[KERNEL32/BASESRV]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 23:41:42 +0000 (23:41 +0000)]
[KERNEL32/BASESRV]
Remove now unneeded bInheritHandles member / parameter.

svn path=/branches/ros-csrss/; revision=58097

7 years ago[KERNEL32/BASESRV/CONSRV]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 23:36:19 +0000 (23:36 +0000)]
[KERNEL32/BASESRV/CONSRV]
- Fix console apps initialization.
- Introduce a helper function InitConsoleCtrlHandling for initializing console control handling.
- We now initialize the new created console when connecting the client (kernel32) to the server (consrv) by calling CsrClientConnectToServer with real parameters (not dummy ones).
- Add/activate some debug prints (will be removed when all things work).

Part 1/2

svn path=/branches/ros-csrss/; revision=58096

7 years ago[NETAPI32]
Eric Kohl [Tue, 1 Jan 2013 22:54:39 +0000 (22:54 +0000)]
[NETAPI32]
NetUserGetLocalGroups: Replace the simulation by a working implementation.

svn path=/trunk/; revision=58095

7 years ago[SAMSRV]
Eric Kohl [Tue, 1 Jan 2013 22:04:41 +0000 (22:04 +0000)]
[SAMSRV]
SamrGetAliasMembership:
- Change requrred access right from DOMIN_LOOKUP to DOMAIN_GET_ALIAS_MEMBERSHIP.
- Handle the case properly where a user is not a member of any alias.
- Retrieve an alias members RID correctly.

svn path=/trunk/; revision=58094

7 years ago[SAMLIB]
Eric Kohl [Tue, 1 Jan 2013 21:12:38 +0000 (21:12 +0000)]
[SAMLIB]
Ensure that optional parameters are handled properly.

svn path=/trunk/; revision=58093

7 years ago[SHELL32]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 19:49:55 +0000 (19:49 +0000)]
[SHELL32]
Fix untitled Run dialog in some languages. I wonder why it was as it since ages, in some languages but not in anothers.

svn path=/trunk/; revision=58092

7 years ago[WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 19:41:20 +0000 (19:41 +0000)]
[WIN32K]
Partly revert r57691. Fixes messed up icons in 32bpp.

svn path=/trunk/; revision=58091

7 years ago[REGEDIT]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 19:38:47 +0000 (19:38 +0000)]
[REGEDIT]
- Revert lstrcpynW --> wcsncpy changes from r57471 back to lstrcpynW because this function automatically NULL-terminate strings
  (but I wonder if there is a replacement of lstrcpynW which has all its functionalities, in the CRT). This fixes address loading
  after editing it in the address bar. Caught by Edijus ;)
- Unicodize a little bit more regedit.

svn path=/trunk/; revision=58090

7 years ago[WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 19:23:30 +0000 (19:23 +0000)]
[WIN32K]
- In NtGdiGetRandomRgn use the region pointers directly, instead of getting their handles. These regions might not even have a handle.
- Fix last error code

svn path=/trunk/; revision=58089

7 years ago[NTOSKRNL]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 16:42:07 +0000 (16:42 +0000)]
[NTOSKRNL]
Display both on the screen and on the debug console that an invalid debug service was called.

svn path=/trunk/; revision=58088

7 years ago[REGEDIT]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 16:06:02 +0000 (16:06 +0000)]
[REGEDIT]
- Use REG_OPTION_NON_VOLATILE instead of 0 in RegCreateKeyEx.
- Do not rename keys when they have the same name, case-insensitive (as Windows does), fix for r58079 / CORE-6205.

svn path=/trunk/; revision=58087

7 years agoFix comment
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 14:57:12 +0000 (14:57 +0000)]
Fix comment

svn path=/trunk/; revision=58086

7 years ago[REGEDIT]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 14:55:53 +0000 (14:55 +0000)]
[REGEDIT]
Fix totally broken InfoMessageBox function. ~=~=\|/ **** Happy New Year 2013 !!!! **** \|/=~=~

svn path=/trunk/; revision=58085

7 years ago[KERNEL32]
Thomas Faber [Tue, 1 Jan 2013 14:18:27 +0000 (14:18 +0000)]
[KERNEL32]
- Fix escape sequence parsing in CreateProcessInternalW. Patch by Vincenzo Cotugno.

svn path=/trunk/; revision=58084

7 years ago[SETUP][SYSSETUP]
Johannes Anderwald [Tue, 1 Jan 2013 12:12:19 +0000 (12:12 +0000)]
[SETUP][SYSSETUP]
- Restore focus after closing GPL window
- Patch by vort
CORE-6837 #resolve #comment fixed in rev 58083

svn path=/trunk/; revision=58083

7 years ago[WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 12:09:53 +0000 (12:09 +0000)]
[WIN32K]
Rewrite EngMulDiv.

svn path=/trunk/; revision=58082

7 years ago[WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 11:57:58 +0000 (11:57 +0000)]
[WIN32K]
Exchange fields individually in PDEVOBJ_vSwitchPdev() instead of duplicating a full PDEV structure on the stack. This saves a lot of stack space.

svn path=/trunk/; revision=58081

7 years ago[FREELDR]
Timo Kreuzer [Tue, 1 Jan 2013 11:37:59 +0000 (11:37 +0000)]
[FREELDR]
Fix a copy pasta, noticed by r3ddr4g0n.

svn path=/trunk/; revision=58080

7 years ago[REGEDIT]
Johannes Anderwald [Tue, 1 Jan 2013 11:28:25 +0000 (11:28 +0000)]
[REGEDIT]
- Check if the new name equals the old name. In that case don't rename key.
- Fixes regedit accidentaly deleting keys when a key is clicked and the rename field appears
CORE-6205 #resolve #comment finally regedit is usable

svn path=/trunk/; revision=58079

7 years ago[WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 11:02:11 +0000 (11:02 +0000)]
[WIN32K]
- Fix a typo from r58077

svn path=/trunk/; revision=58078

7 years agoFix build
Timo Kreuzer [Tue, 1 Jan 2013 09:50:33 +0000 (09:50 +0000)]
Fix build

svn path=/trunk/; revision=58077

7 years ago{WIN32K]
Timo Kreuzer [Tue, 1 Jan 2013 09:40:48 +0000 (09:40 +0000)]
{WIN32K]
- Add some annotations
- Fix some 64bit issues
- Fix a typo
- reduce ENUM_RECT_LIMIT to 32, which is more than enough and doesn't waste as much stack space
- remove some unused macros

svn path=/trunk/; revision=58076

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 02:59:31 +0000 (02:59 +0000)]
[CONSRV]
- Be sure that we reply to the dying client when he dies.
- "Improve" a debug output (display the client process).
- Use existing helper functions for incrementing reference counts for threads and processes.

svn path=/branches/ros-csrss/; revision=58075

7 years ago[CSRSRV]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 02:21:05 +0000 (02:21 +0000)]
[CSRSRV]
Be sure to REALLY compare the Client ID (both Process and Thread handles).

svn path=/branches/ros-csrss/; revision=58074

7 years ago[CSRSRV]
Hermès Bélusca-Maïto [Tue, 1 Jan 2013 02:12:19 +0000 (02:12 +0000)]
[CSRSRV]
Do NOT confuse a handle and a pointer to a handle !! In this case we need a handle.

Caught in the following situation :

1- Launch a process A which initializes a console A (say, cmd.exe).
2- Launch a process B which also initializes a console B (for instance, in the first cmd.exe, do: start cmd.exe)
3- Click on the "Close" button (the "Cross" button in the right upper side) of the windows of the console A.
4- Notice that the console B closes but the process B remains alive, whereas the console A remains open but the process A is killed...
   (contrary to what you expected, closing the console A and the process A)

(when clicking on the "Close" button, the Console Server launches a remote thread in the context of the target process, and it appeared in the described situation
that it was the wrong process, because of bad parameter passing to the sub-function CsrLockProcessByClientId called when creating the remote thread).

svn path=/branches/ros-csrss/; revision=58073

7 years ago[USRMGR]
Eric Kohl [Mon, 31 Dec 2012 22:04:05 +0000 (22:04 +0000)]
[USRMGR]
- Enable the call to NetUserAdd.

This enables us to create new user accounts. A lot of stuff is still missing, so don't be surprised if something unexpected happens. It will be fixed soon.

Happy new Year!

svn path=/trunk/; revision=58072

7 years ago[NETAPI32]
Eric Kohl [Mon, 31 Dec 2012 18:39:19 +0000 (18:39 +0000)]
[NETAPI32]
Implement parts of NetUserAdd.

svn path=/trunk/; revision=58071

7 years ago[SAMSRV]
Eric Kohl [Mon, 31 Dec 2012 17:59:19 +0000 (17:59 +0000)]
[SAMSRV]
Implement SamrSetInformationUser2.

svn path=/trunk/; revision=58070

7 years ago[REGEDIT]
Thomas Faber [Mon, 31 Dec 2012 17:10:15 +0000 (17:10 +0000)]
[REGEDIT]
- Fix a handle leak. Patch by Edijs Kolesnikovičs.
CORE-6853 #resolve

svn path=/trunk/; revision=58069

7 years ago[SAMLIB]
Eric Kohl [Mon, 31 Dec 2012 14:56:11 +0000 (14:56 +0000)]
[SAMLIB]
Implement SamShutdownSamServer.

svn path=/trunk/; revision=58068

7 years ago[SAMSRV]
Eric Kohl [Mon, 31 Dec 2012 14:01:23 +0000 (14:01 +0000)]
[SAMSRV]
SamrSetInformationUser: Implement UserParametersInformation and UserAllInformation information classes.

svn path=/trunk/; revision=58067

7 years ago[FREELDR]
Timo Kreuzer [Mon, 31 Dec 2012 10:08:34 +0000 (10:08 +0000)]
[FREELDR]
Implement MmCheckFreeldrImageFile() to check that freeldr was properly compiled and loaded.

svn path=/trunk/; revision=58066

7 years ago[KS]
Timo Kreuzer [Mon, 31 Dec 2012 09:48:46 +0000 (09:48 +0000)]
[KS]
Pass a PUNICODE_STRING instead of a LPWSTR (and unused BufferSize) to FindMatchingCreateItem(), make use of the Length parameter instead of trusting on NULL termination when searching for path separators.

svn path=/trunk/; revision=58065

7 years ago[CONSRV]
Hermès Bélusca-Maïto [Sun, 30 Dec 2012 22:00:20 +0000 (22:00 +0000)]
[CONSRV]
I replaced by error the mask 0x10000003 by 0x3, which had as an effect to match handles of value 0xffffffff (invalid_handle_value). Fichtre !

svn path=/branches/ros-csrss/; revision=58064

7 years ago[KERNEL32/CONSRV]
Hermès Bélusca-Maïto [Sun, 30 Dec 2012 21:02:12 +0000 (21:02 +0000)]
[KERNEL32/CONSRV]
- Code reorganization.
- In particular, move IsConsoleHandle macro to a place which it can be used by both kernel32 and consrv.

svn path=/branches/ros-csrss/; revision=58063

7 years ago[RAPPS]
Aleksey Bragin [Sun, 30 Dec 2012 19:53:50 +0000 (19:53 +0000)]
[RAPPS]
- Fix MPC download url. Patch CORE-6849 by serrox.

svn path=/trunk/; revision=58062