reactos.git
11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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

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

svn path=/trunk/; revision=58082

11 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

11 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

11 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

11 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

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

svn path=/trunk/; revision=58077

11 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

11 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

11 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

11 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

11 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

11 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

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

svn path=/trunk/; revision=58070

11 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

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

svn path=/trunk/; revision=58068

11 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

11 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

11 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

11 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

11 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

11 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

11 years ago[PSEH3]
Timo Kreuzer [Sun, 30 Dec 2012 19:02:54 +0000 (19:02 +0000)]
[PSEH3]
Tiny asm optimization.

svn path=/trunk/; revision=58060

11 years ago[PSEH3]
Timo Kreuzer [Sun, 30 Dec 2012 18:01:34 +0000 (18:01 +0000)]
[PSEH3]
Apply the same mechanism to prevent inlining SEH using functions that was already applied to PSEH2.

svn path=/trunk/; revision=58059

11 years ago[INCLUDE]
Eric Kohl [Sun, 30 Dec 2012 17:28:21 +0000 (17:28 +0000)]
[INCLUDE]
Add some user information types to ntsam.h and fix sam.idl accordingly.

svn path=/trunk/; revision=58058

11 years ago[PSEH3]
Timo Kreuzer [Sun, 30 Dec 2012 17:11:02 +0000 (17:11 +0000)]
[PSEH3]
Hack the hack a bit more. Should fix annoying warnings about possible uninitialized variables. Also generates smaller code, by getting rid of a stray relative jump instruction.

svn path=/trunk/; revision=58057

11 years ago[PSEH2_TEST]
Timo Kreuzer [Sun, 30 Dec 2012 13:35:30 +0000 (13:35 +0000)]
[PSEH2_TEST]
Fix build with PSEH3

svn path=/trunk/; revision=58056

11 years ago[KERNEL32-CONSRV]
Hermès Bélusca-Maïto [Sun, 30 Dec 2012 13:25:50 +0000 (13:25 +0000)]
[KERNEL32-CONSRV]
* HANDLE_TYPE --> CONSOLE_HANDLE_TYPE because it hits "previous" definition of this enumeration (a totally different one from win32ss/include/ntuser.h)
* Temporarily add a dummy member to the CONSOLE_CONNECTION_INFO structure, to make MSVC happy.

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

11 years ago[GDI32_APITEST]
Timo Kreuzer [Sun, 30 Dec 2012 13:21:52 +0000 (13:21 +0000)]
[GDI32_APITEST]
Fix a warning and improve code.

svn path=/trunk/; revision=58054

11 years ago[SAMSRV]
Eric Kohl [Sun, 30 Dec 2012 13:00:02 +0000 (13:00 +0000)]
[SAMSRV]
Enable the use of generic access rights by mapping them to object specific right.

svn path=/trunk/; revision=58053

11 years ago[GDI32_APITEST]
Timo Kreuzer [Sun, 30 Dec 2012 12:56:55 +0000 (12:56 +0000)]
[GDI32_APITEST]
Add tests for SetDIBitsToDevice

svn path=/trunk/; revision=58052

11 years ago[NTOSKRNL]
Timo Kreuzer [Sun, 30 Dec 2012 11:54:40 +0000 (11:54 +0000)]
[NTOSKRNL]
Fix a number of 64bit issues.

svn path=/trunk/; revision=58050