Hermes Belusca-Maito

[USERINIT]: Addendum to r72823 (sorry for the redundant commits): Fix a use without initialization warning for the 'Success' variable: initialize it to TRUE so that we by default do not perform the main menu loop (in livecd mode).
[USERINIT]: Usability commit: when in LiveCD mode, if we cannot start the shell or the installer, display again the main menu.
    • -5
    • +18
    /trunk/reactos/base/system/userinit/userinit.c
[USERINIT]: Addendum to r72821 + demote to WARNing the displayed message if the installer could not be started.
[USERINIT]

- Use explicit unicode functions where possible.

- Use ARRAYSIZE(foo) instead of sizeof(foo)/sizeof(foo[0]).

- Don't hardcode some buffer sizes.

- Try reducing level of code indentation in some functions.

- Make StartShell and StartInstaller return a boolean (TRUE: success; FALSE: failure). Will be needed in the next commit.

- Remove a useless "#pragma warning".

    • -40
    • +40
    /trunk/reactos/base/system/userinit/livecd.c
    • -119
    • +132
    /trunk/reactos/base/system/userinit/userinit.c
[EVENTVWR]: Turkish translation update by Erdem Ersoy.

CORE-12031 #resolve #comment Committed, thanks!

[LSALIB]: Fix build (and 2 dprints in the process).
[SECUR32][NTOS]: Update the LSA export signatures for the functions that are implemented in the "lsalib" library.

[LSALIB]

- Add old-school annotations (as we currently do in our main .c code of our stuff).

- Mention that LsaConnectUntrusted is not an API that is exported (& implemented) by ntoskrnl.

- For LsaRegisterLogonProcess, we first wait for the LSA server to be ready (by waiting on its initialization event). This is TODO for LsaConnectUntrusted on the contrary.

[LSALIB][NTOS]

Usa the lsalib as the implementation of the LSA functions exported by ntoskrnl. But for that we need to recompile the lsalib as a library that can be used from inside ntoskrnl, because it needs some functions that are normally exported by ntos. For this purpose I add the library target "ntlsalib" (which also specify different #defines), to differentiate it from the (user-mode) "lsalib" one that is used by secur32.dll (Amine, if you have a better idea on how to do that, please let me know!).

    • -3
    • +3
    /trunk/reactos/dll/win32/secur32/secur32.spec
    • -95
    • +130
    /trunk/reactos/sdk/lib/lsalib/lsa.c
    • -0
    • +5
    /trunk/reactos/sdk/lib/lsalib/CMakeLists.txt
    • -1
    • +1
    /trunk/reactos/ntoskrnl/CMakeLists.txt
Revert 2 small changes that I didn't want to do.
    • -2
    • +2
    /trunk/reactos/sdk/include/psdk/winwlx.h
[PSDK]: Add annotations & fix whitespace.
    • -398
    • +418
    /trunk/reactos/sdk/include/psdk/winwlx.h
[WINLOGON]

- CreateUserEnvironment: if user impersonation fails, just fail the call.

- SetDefaultLanguage: Use the *correct* HKEY_CURRENT_USER key to retrieve the lang., that is, first impersonate the user, then, call RegOpenCurrentUser. We do that because otherwise calling RegOpenKey(Ex) for HKEY_CURRENT_USER just uses the process cached value of HKEY_CURRENT_USER, which does not change *even if* one impersonates an user.

[MSGINA]

- Correctly impersonate the user when opening & initializing the shutdown dialog (in the same way as winlogon does), i.e. call ImpersonateLoggedOnUser and use RegOpenCurrentUser.

- Fill few (but not all) code holes in WlxScreenSaverNotify.

    • -37
    • +64
    /trunk/reactos/base/system/winlogon/sas.c
    • -12
    • +27
    /trunk/reactos/dll/win32/msgina/shutdown.c
    • -5
    • +23
    /trunk/reactos/dll/win32/msgina/gui.c
    • -12
    • +31
    /trunk/reactos/dll/win32/msgina/msgina.c
[NTOS]: Code formatting only.
[MSGINA]

- Do not hardcode buffer sizes in function calls, and use _countof when needed.

- Use explicit unicode functions where possible.

- No need to have 342687 versions of the shutdown dialog in msgina, only one is sufficient. The help button should be either shown or hidden, depending on whom is calling the dialog (shell or winlogon) (this is TODO!)

- Therefore, no need to have twice the (almost) same code for the shutdown dialog.

- Fix & rework said code.

- The old duplicated shutdown dialog now becomes the "template" for the "Luna-XP-style Shut Down dialog" (implementation TODO!)

- Reenable the WM_ACTIVATE code that was added in r72720 and temporarily disabled in r72721.

CORE-7559 #comment Numerous fixes committed in r72732.

    • -1
    • +24
    /trunk/reactos/dll/win32/msgina/msgina.h
    • -10
    • +7
    /trunk/reactos/dll/win32/msgina/lang/es-ES.rc
    • -10
    • +7
    /trunk/reactos/dll/win32/msgina/lang/zh-CN.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/fr-FR.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/cs-CZ.rc
    • -10
    • +7
    /trunk/reactos/dll/win32/msgina/lang/tr-TR.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/pl-PL.rc
    • -9
    • +7
    /trunk/reactos/dll/win32/msgina/lang/en-US.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/sk-SK.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/it-IT.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/no-NO.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/he-IL.rc
    • -9
    • +6
    /trunk/reactos/dll/win32/msgina/lang/ru-RU.rc
    • -10
    • +7
    /trunk/reactos/dll/win32/msgina/lang/ro-RO.rc
  1. … 11 more files in changeset.
[SHELL32]: Code formatting only.
[MSGINA][SHELL32]: Temporarily disable the WM_ACTIVATE check because it blocks for whatever reason the dialog to properly close and return its correct return value when the user selects e.g. "Shutdown" and validate by pressing "OK" (effectively disables commit r72720).
[MSGINA][SHELL32]: Now that CORE-11979 is fixed, automatically close the logoff/shutdown dialog as soon as the user deactivates the window (focus lost) by e.g. pressing Alt-Tab.
[XDK][MSGINA]: Consistency codestyle fixes.

[SHELL32]

- Use explicit unicode functions;

- Use _countof instead of sizeof(foo)/sizeof(foo[0]);

- Enable the shutdown privilege when we need it, and disable as soon as possible (code taken from taskmgr).

    • -1
    • +1
    /trunk/reactos/sdk/include/xdk/setypes.h
[MSGINA]: Code style fixes:

- Use explicit unicode functions;

- Just use the hdc field of the PAINTSTRUCT initialized by BeginPaint instead of introducing yet another hdc variable;

- Use SetDlgItemTextW instead of GetDlgItem + SetWindowTextW;

- Don't hardcode buffer sizes in functions calls;

- Use _countof instead of sizeof(foo)/sizeof(foo[0]);

- Avoid using raw 'int' variables where possible;

- Remove trailing whitespace.

...

    • -100
    • +121
    /trunk/reactos/dll/win32/msgina/shutdown.c
[NTVDM]: Update README.
    • -2
    • +4
    /trunk/reactos/subsystems/mvdm/README.txt
[NTVDM]: Add new icons:

- Tango-style icons by Henry Tang Ih and Jared Smudde, arranged by myself for PC-XT and AT style;

- ROS-DOS & VDM-DOS (copied from pifmgr.dll) by DSP2015

CORE-10340

    • -1
    • +7
    /trunk/reactos/subsystems/mvdm/ntvdm/ntvdm.rc
    • binary
    /trunk/reactos/subsystems/mvdm/ntvdm/res/pc_xt.ico
    • binary
    /trunk/reactos/subsystems/mvdm/ntvdm/res/pc_at.ico
    • -0
    • +18
    /trunk/reactos/subsystems/mvdm/ntvdm/res/README.txt
[PIFMGR]: Update the 16-colour format of some icons; add new icons.

CORE-10253

    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/17.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/18.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/22.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/12.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/05.ico
Of course, as soon as you see such typos in our code, you can be 90% sure they are repeated elsewhere. And indeed they are. Fix the typos in our code (I leave them in the 3rd party code).

Concerning the fix in the NDK header I've checked that publicly available information about this structure (NirSoft website, Windows Internals book, Windows symbols...) has the member correctly named.

    • -1
    • +1
    /trunk/reactos/sdk/include/ndk/pstypes.h
    • -1
    • +1
    /trunk/reactos/drivers/bus/pcix/pci/config.c
[PIFMGR]

- Add new icons by DSP2003 under CC-BY-SA 4.0 International License Terms (the .ico and the original .png files).

- Use DSP2003's icons wherever possible, otherwise fallback to "alternative" icons or to the placeholder icon. The aim is to finally convert or create all the remaining icons using DSP2003's style.

CORE-10253

    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/34.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res_alt/26.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/11.png
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/14.png
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/18.png
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/04.png
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/01vdm.ico
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/23.png
    • binary
    /trunk/reactos/subsystems/mvdm/pifmgr/res/20.png
  1. … 56 more files in changeset.
[NTDLL]: Fix misspelling.
[NTVDM]: Improve a bit the WOW16 "unsupported" warning message. See CORE-10323
[NTOS]: Fix comments & increase code readability by directly using InterlockedIncrement.
    • -6
    • +9
    /trunk/reactos/ntoskrnl/io/iomgr/iofunc.c
[NDK]: Fix size of reserved member of the RTL_HEAP_INFORMATION structure, signaled by https://github.com/subTee/native-nt-toolkit/issues/5 and confirmed by Process Hacker headers.
    • -1
    • +1
    /trunk/reactos/sdk/include/ndk/rtltypes.h
    • -1
    • +1
    /trunk/reactos/sdk/include/ndk/extypes.h
[README]

- Show our URLs using https.

- Add a "FAQ" section to point to the corresponding website URL; feel free to improve the section!

    • -6
    • +15
    /trunk/reactos/boot/bootdata/readme.txt
[CRT]: Fix typo. Thanks DopefishJustin:)
    • -1
    • +1
    /trunk/reactos/sdk/lib/crt/stdlib/abort.c
[DOSKEY]

Our kernel32.lib already exports all of the console API and in particular the console history API, so we can directly link doskey against it and use them, instead of delay-loading at runtime. We just need to add their prototypes in the source code since they are not declared by wincon.h by default.