Timo Kreuzer
65c3911ffc
[RTL] Improve / fix the SList code
...
Don't push a register in the middle of a an asm function. Instead add a proper prolog and store rbx in a home param slot.
2021-06-05 13:52:42 +02:00
Timo Kreuzer
0520c75aaf
[CRT] Implement __C_specific_handler
2021-06-05 13:52:42 +02:00
Katayama Hirofumi MZ
2106bc4a81
[CPL][APPWIZ] Make gecko download cancellable by keyboard ( #3726 )
...
We shouldn't disable nor hide the control with focus. CORE-17550, CORE-5737
2021-06-05 18:21:25 +09:00
Joachim Henze
ae574e16f8
[WINETESTS] Workaround crashes in riched20:richole on VBox/KVM bots CORE-16799
...
The crashes began when those tests were synced to Wine Staging 4.18 in
0.4.14-dev-419-g 76cf09cfea
WHS 2k3sp2 Before the revert implies the tests were actually ok:
https://reactos.org/testman/compare.php?ids=77492
Disabling some of the tests is very unsatisfying of course,
but at least allows us to observe again
the results of the other tests from that suite.
VBox https://reactos.org/testman/compare.php?ids=77504,77506
KVM https://reactos.org/testman/compare.php?ids=77502,77505
2021-06-04 20:04:20 +02:00
Timo Kreuzer
7f2e0ece5a
[NTOS:KE/x64] Handle shared interrupts
2021-06-04 09:19:13 +02:00
Timo Kreuzer
ce537f1ae9
[EXPLORER] Check m_Position for -1 before using it as an index
...
This fixes a crash on x64.
2021-06-04 09:15:55 +02:00
Timo Kreuzer
11ffa31155
[BROWSEUI] Fix broken code
2021-06-04 09:15:55 +02:00
Katayama Hirofumi MZ
55345930ad
[SHELL32_APITEST] ShellExecCmdLine: Don't copy Notepad.exe
...
On Windows 10, when I copyed Notepad.exe to the desktop and double-clicked it, it won't start Notepad. This is probably because there is a security protection mechanism (or some mechanism) at work. Tests that assume this mechanism will not work properly on ReactOS. Thus, I had to delete some tests. CORE-17351
2021-06-04 06:16:07 +09:00
Katayama Hirofumi MZ
f37b94ba39
[SHELL32_APITEST] ShellExecCmdLine: Close Notepad windows
...
By using newly added CloseNotepads function, close the Notepad window.
CORE-17351
2021-06-03 14:49:49 +09:00
Timo Kreuzer
e8496b4fbf
[NTOS:PS/x64] Fix PspGetOrSetContextKernelRoutine
...
It now uses KiSetTrapContext to set the non-volatile context on the stack and the volatile context in the trap frame.
2021-06-02 18:25:36 +02:00
Timo Kreuzer
f1ed97d6cc
[NTOS:KE/x64] Implement KiSetTrapContext
...
KiSetTrapContext is an asm wrapper around RtlSetUnwindContext, which first stores an exception frame to assure that all non-volatile registers were put on the stack, then calls RtlSetUnwindContext to update their first saving positions on the stack and finally restore the exception frame to potentially load any updated registers, that haven't been saved elsewhere on the stack.
2021-06-02 18:25:36 +02:00
Timo Kreuzer
e801b7dda2
[RTL/x64] Implement RtlpCaptureNonVolatileContextPointers and RtlSetUnwindContext
...
RtlpCaptureNonVolatileContextPointers walks the stack and captures the addresses of all non-volatile registers on the stack, when they have been saved first. This is needed to be able to fix up the non-volatile on a system call, which doesn't capture non-volatiles, but relies on them to be restored by the callees.
Instead of only checking for the TargetFrame, also check for a mode change, i.e. RIP went from kernel to user, in which case the target frame was not reached yet, because it was too large, but processing can't continue here.
RtlSetUnwindContext uses RtlpCaptureNonVolatileContextPointers to set the non-volatile registers in the the stack. They will be picked up, when returning back or unwinding, e.g. to the system call handler.
2021-06-02 18:25:36 +02:00
Serge Gautherie
80b54b8026
[BOOT] CMakeLists.txt: Compare ARCH to arm64, not aarch64
...
This aarch64 was introduced first,
but arm64 was preferred everywhere else since then.
CORE-17518
2021-06-02 13:26:08 +03:00
Serge Gautherie
7e43c2610d
[CMAKE] CMakeLists.txt: Fix 'omap-zoom2' typo
...
Addendum to fae2044
(r51783).
CORE-17604
2021-06-02 13:24:39 +03:00
Stanislav Motylkov
11687e9e43
[CRT][ARM] Fix uninitialized variables caught by RTC
...
CORE-17613
2021-06-02 13:18:40 +03:00
Piotr Hetnarowicz
0175e8f8dd
[EXPLORER] Polish translation update ( #3704 )
2021-06-02 11:54:12 +02:00
Piotr Hetnarowicz
4771551c74
[BROWSEUI] Polish translation update ( #3703 )
2021-06-02 11:53:07 +02:00
Piotr Hetnarowicz
0e18985e56
[WINLOGON] Polish translation update ( #3702 )
2021-06-02 11:52:10 +02:00
Piotr Hetnarowicz
d05a20e7b3
[SHELL32] Polish translation update ( #3701 )
2021-06-02 11:50:54 +02:00
George Bișoc
06b0d2e380
[NTOS:SE] Implement logon session deletion
...
And declare a prototype for SepCleanupLUIDDeviceMapDirectory and annotate it with SAL.
2021-06-02 11:09:01 +02:00
Serge Gautherie
2dcc40fb3e
[CMAKE] CMakeLists.txt: Remove NO_UNDERSCORE_PREFIX leftovers
...
And switch to add_compile_definitions().
Addendum to 9efafd6
.
2021-06-02 10:04:21 +02:00
Katayama Hirofumi MZ
59d4c11203
[WIN32SS][NTUSER] ShowWindow.SW_MINIMIZE should show window ( #3700 )
...
- user32!ShowWindow.SW_MINIMIZE should show the window.
- Fix the return value of ShowWindow function on invalid parameter.
CORE-15669
2021-06-01 11:11:23 +09:00
Serge Gautherie
5ce9e2ec8e
[GITHUB] build.yml: Define CLANG_VERSION for clang only
...
Addendum to a66214c
.
2021-05-31 16:04:49 +02:00
Serge Gautherie
4d00a5653a
[GITHUB] build.yml: Properly define LLVM_VERSION
...
Addendum to a66214c
.
2021-05-31 16:04:49 +02:00
Katayama Hirofumi MZ
32b0cf6fc6
[WIN32SS][NTUSER] Improve HSHELL_WINDOWCREATED condition ( #3697 )
...
Modify the condition of generating HSHELL_WINDOWCREATED, especially on WS_CHILD window style. CORE-15669
2021-05-31 13:08:06 +09:00
Eric Kohl
7b970c67a8
[NETCFGX] Create unique network connection names
2021-05-30 21:12:58 +02:00
Katayama Hirofumi MZ
a8ed286c86
[USER32_APITEST] Add ShowWindow testcase ( #3689 )
...
Investigate the implementation of user32!ShowWindow. CORE-15669
2021-05-30 09:37:38 +09:00
Timo Kreuzer
0c3812eb7e
[RTL/x64] Implement RtlRestoreContext
2021-05-29 21:20:48 +02:00
Timo Kreuzer
abb338b13d
[RTL/x64] Improve RtlCaptureContext
...
Use movaps instead of movdqa, it does the same thing, but is one byte shorter.
Shuffle instructions around a bit to maximize parallel execution.
2021-05-29 21:20:48 +02:00
Timo Kreuzer
3831c0ca31
[RTL/x64] Improve RtlInitializeContext
2021-05-29 21:20:48 +02:00
George Bișoc
3140dac3fe
[NTOS:SE] Do some cleanup on ICIF flags in token information classes
...
A few of these classes have fixed size lengths, the rest are arbitrary. Also the TokenAuditPolicy class hasn't a size length type specified in the table, which is wrong (and move the corresponding TOKEN_AUDIT_POLICY_INFORMATION structure into the private header).
2021-05-29 12:44:03 +02:00
Katayama Hirofumi MZ
d21adc9b31
[SHELL32_APITEST] Strengthen and improve ShellHook testcase ( #3687 )
...
- Add tests to find the missing parameters against HSHELL_WINDOWCREATED conditions.
- Improve code readability. CORE-15669
2021-05-29 09:33:46 +09:00
Timo Kreuzer
e693d5ffc0
[USBPORT] Make unload work
2021-05-28 22:29:44 +02:00
Timo Kreuzer
db0c59cbd4
[CRT] Use the asm version of sqrt on amd64
2021-05-28 11:52:42 +02:00
Timo Kreuzer
90a0e426ed
[NTOS:KE] Add IRQL checks and fix KiInitiateUserApc
2021-05-28 11:52:42 +02:00
Timo Kreuzer
3d18831c19
[NTOS:KE] Improve KiSystemCallEntry64
2021-05-28 11:52:42 +02:00
Timo Kreuzer
69e8cb635a
[NTOS:KE] Fix stack alignment issues
2021-05-28 11:52:42 +02:00
Timo Kreuzer
2a2d0903bf
[NTOS:KE] Remove duplicated EFlag definitions
2021-05-28 11:52:42 +02:00
Timo Kreuzer
42e1fefcc6
[ASM] Clear interrupt flag in ExitTrap before returning
2021-05-28 11:52:42 +02:00
Timo Kreuzer
d07203ecb7
[WIN32K][USER32] Change mechanism for storing dialog info pointer
...
DLGWINDOWEXTRA is 30 (both on win32 and win64). This has storage for the following entries: DWLP_MSGRESULT (0), DWLP_DLGPROC (8), DWLP_USER (16)
We used to store the dialog info pointer using SetWindowLongPtr (DWLP_ROS_DIALOGINFO == DWLP_USER+sizeof(ULONG_PTR) == 24), which was fine on win32, but failed on win64, since there wasn't enough space left (24 + 8 = 32 > 30).
Rewrite the way the DLGINFO pointer is stored, by adding an additional field to the WND structure and set it using NtUserxSetDialogPointer (which is what it is for).
Also fix too small cbWndExtra for the button class.
2021-05-28 08:26:36 +02:00
Timo Kreuzer
50c9dab6c9
[WIN32K] Fix wrong calculation in DIB_32BPP_BitBltSrcCopy
...
Using an unsigned integer will cause the calculations to be unsigned, which on x64 leads to wrong results, when adding it to a pointer.
2021-05-27 15:53:24 +02:00
Mark Jansen
f0bee6c4bc
[SHELL32] CDefView: Prevent use after free
...
While updating the item, the LVIF_STATE would be requested,
for which the old lParam would be accessed.
2021-05-26 22:57:43 +02:00
Katayama Hirofumi MZ
949e3a9cec
[REGEDIT] Use InitCommonControlsEx instead of InitCommonControls ( #3686 )
...
NOTE: Windows sets 0xFFFF to icce.dwICC but we use better value.
2021-05-26 21:11:10 +09:00
Jérôme Gardou
b0ebf68d98
[NTOS:IO] Be more specific for chasing CORE-17587
...
Addendum to 42ec1388d7
2021-05-26 11:03:34 +02:00
Jérôme Gardou
42ec1388d7
[NTOS:IO] Break on IoRaiseInformationalHardError
...
This one will eventually be reverted. For now, this will help debugging CORE-17587
2021-05-26 10:48:29 +02:00
Hermès Bélusca-Maïto
53bd132cec
[CMD] Reset the current thread UI language at startup, and when updating the local code page cache.
...
CORE-17601
2021-05-26 01:42:12 +02:00
Hermès Bélusca-Maïto
0483063b69
[MODE] Reset the current thread UI language and streams codepage after changing the console codepage. Add extra error handling.
...
CORE-17601
2021-05-26 01:42:11 +02:00
Hermès Bélusca-Maïto
a8ef85ad71
[CHCP] Reset the current thread UI language and streams codepage after changing the console codepage.
...
CORE-17601
2021-05-26 01:42:11 +02:00
Hermès Bélusca-Maïto
7c3aabc088
[CONUTILS] Implement ConSetThreadUILanguage() as a wrapper for kernel32!SetThreadUILanguage().
...
CORE-17601
Dynamically load SetThreadUILanguage(), so as to support systems where this API is not present.
Hopefully implemented in a thread-safe manner.
2021-05-26 01:42:10 +02:00
Hermès Bélusca-Maïto
35f499e52f
[CONUTILS][CMD] Add and use a helper ConStdStreamsSetCacheCodePage() macro instead of repeatedly calling ConStreamSetCacheCodePage() on the standard streams.
2021-05-26 01:42:09 +02:00