Hermès Bélusca-Maïto
f74a3f6e29
[CONUTILS:PAGER][MORE] Code style/formatting.
...
- Shorten the names of the flags: CON_PAGER_FLAG_*** --> CON_PAGER_***.
- Reorder few members in the CON_PAGER pager structure where they make sense.
- ScreenColumns, ScreenRows --> PageColumns, PageRows: keeping the open
possibility for having a pager controlling a region of different size
than the screen.
- Add doxygen documentation for ConWritePaging().
2021-06-28 21:26:30 +02:00
Victor Perevertkin
1c7f3476a0
[CMAKE] Use BUILD_MP CMake option correctly
2021-06-28 17:54:09 +03:00
Jérôme Gardou
ada609bdbc
[PSDK] Alias _Check_return_ annotation to warn_unused_result attribute
2021-06-28 10:20:57 +02:00
Jérôme Gardou
e10892e4f4
[CRT] Put __MINGW_EXTENSION (whatever that means) in front of function declarations
...
Needed for next commit
2021-06-28 10:20:57 +02:00
Jérôme Gardou
d1f5c31820
[SDK] Add GCC overrides for SAL annotations
...
GCC has some functions, variables & type attributes which can be used as aliases
for some of the SAL annotations. Although it's not as rich & precise, it's still useful
since we actually enable -Werror on GCC builds whereas we don't use such an option
on MSVC builds.
For now, _Must_inspect_result_ is aliased to warn_result_unused attribute.
2021-06-28 10:20:57 +02:00
Jérôme Gardou
a28a34f108
[NDK][XDK] Remove _Must_inspect_result_ from RtlTimeFieldsToTime & RtlTimeToSecondsSince1970
...
WDK doesn't have it and it causes more mess than anything.
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
28c5f7538a
[DDK] Do not put _Must_inspect_result_ on function returning void & without _Out_ parameters
2021-06-28 10:20:57 +02:00
Jérôme Gardou
46af941c4c
[NTOS:FSRTL] Check return status of FsRtl locking functions
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
e55eeb2d9c
[WDF] Synchronize function attributes between declaration & definition
...
Addendum to 1f377076d7
2021-06-28 10:20:57 +02:00
Jérôme Gardou
d924cb8271
[NTOS:CONFIG] Do not ignore Rtl*String functions return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
3ad38f29b5
[NTOS:OB] Use RtlInitUnicodeString for constant string
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
8178996559
[NTOS:SE] Do not ignore SepAccessCheckAndAuditAlarmWorker return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
07d38cd4c5
[NTOS:PO] Do not ignore IoRegisterPlugPlayNotification return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
230e6b9492
[NTOS:INBV] Do not ignore RtlUnicodeStringToOemString return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
838abc475c
[NTOS:IO] Do not ignore RtlDuplicateUnicodeString return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
cf1a95a588
[NTOS:EX] Do not ignore PsCreateSystemThread return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
93c0d324e0
[NTOS:EX] Do not ignore RtlAnsiStringToUnicodeString return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
376fbc5242
[NTOS:MM] Check result of RtlCreateUnicodeString in MmGetFileNameForAddress
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
3f16c8615c
[NTOS:IO] Check RtlCreateUnicodeString return value when initializing PnP services
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
24a4e12a76
[NTOS:IO] Check RtlAnsiStringToUnicodeString return value when initializing Arc names
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
293f823053
[NTOS:IO] Check RtlAnsiStringToUnicodeString return value when initializing ramdisk
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
e961958823
[NSLOOKUP] Check WSAStartup return value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
6bf64780e4
[NET] Properly check return value of EnumServicesStatusW on first call
2021-06-28 10:20:57 +02:00
Jérôme Gardou
5aafeb473f
[FLTMC] Do not ignore failures of some functions
...
Also reduce use of magic values.
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
46394ab80d
[RTL] In RtlReleasePrivilege, raise exception if restoring old privileges fails
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
fb9ebe17bf
[RTL] When taking system volume ownership, assert that we succeeded to restore privileges
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
9c5b39e25a
[RTL] Check and cascade down RtlGUIDFromString value
...
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
900b6a5d56
[FREELDR] Check HwInterrupt return value
...
_Must_inspect_result_ is there for a reason
CORE-17637
2021-06-28 10:20:57 +02:00
Timo Kreuzer
8a68820429
[SDK] Add missing sal annotations in driverspecs.h and kernelspec.h
...
CORE-6706
2021-06-28 08:48:59 +02:00
Hermès Bélusca-Maïto
e7a5850d65
Revert "[SHELL32] Don't check for link files being targets for other link files. Addendum to 3a822e4f."
...
This reverts commit 3249a00364
.
2021-06-28 04:11:00 +02:00
Hermès Bélusca-Maïto
3199fdbd44
[SHLWAPI] Fix a trivial bug in PathFileExistsDefExtW() that seems to exist since 16+ years in Wine.
...
Suppose dwFlags == 1 | 4 (i.e. skipping the flag 2).
Then the while-loop would only run once, because at the second iteration
(after dwWhich >>= 1; has been executed once), dwWhich value == 2, but
dwWhich & 0x1 == 0, which makes the while-loop condition false.
Instead the loop should run, but the handling of the extension should be
skipped.
2021-06-28 02:19:31 +02:00
Hermès Bélusca-Maïto
8ec3580123
[SHELL32] Add the handy WHICH_DEFAULT value to the list of flags in shlwapi_undoc.h.
...
- Add as well the undocumented 0x40 dwFlags value from shlwapi!PathFileExistsDefExtW()
to the list.
- Fix a bug (also present in Win2k3) in PathResolveW() where, specifying
the PRF_DONTFINDLNK flag, would also erroneously exclude checking for
the .cmd extension as well (which was obviously NOT the original
intention, from the name of the flag and the documentation as well:
https://docs.microsoft.com/en-us/windows/win32/api/shlobj_core/nf-shlobj_core-pathresolve
).
Addendum to 3a822e4f
.
2021-06-28 02:19:30 +02:00
Hermès Bélusca-Maïto
3249a00364
[SHELL32] Don't check for link files being targets for other link files. Addendum to 3a822e4f
.
2021-06-28 02:19:30 +02:00
Joachim Henze
adee5ca255
[COMCTL32] Addendum to last commit ( #3674 ) CORE-17199
...
Keep that section like we had it to
support compilation on VS2010.
It does still work like that.
Addendum to commit 0.4.15-dev-2796-g e382b7bc35
2021-06-28 02:05:56 +02:00
Doug Lyons
e382b7bc35
[COMCTL32] Sync datetime.c to Wine-6.0 ( #3674 ) CORE-17199
...
Fix automatic toggling of date display on second stage setup
Update comctrl from Wine with fix.
Sync datetime.c to Wine-6.0
2021-06-28 01:18:10 +02:00
Katayama Hirofumi MZ
3a822e4f74
[SHELL32] Implement PathResolveW function ( #3762 )
...
- Implement PathResolveW function.
- Implement PathQualifyA/W functions using newly-defined PathQualifyExW function.
CORE-12665
2021-06-28 07:53:26 +09:00
Joachim Henze
81f8bcea8c
[DSOUND][WAVE] Workaround crash when recording sound in Scratch 1.4 CORE-13202
...
It regressed by SVN r44721 == git 356d4bab16092de335705e02b0e87698ec35c393
when #define USE_MMIXER_LIB was removed.
Thanks to the patches author Doug Lyons.
VBox https://reactos.org/testman/compare.php?ids=77914,77919 LGTM
KVM https://reactos.org/testman/compare.php?ids=77913,77918 LGTM
2021-06-27 23:04:36 +02:00
Hervé Poussineau
979b7d4d8e
[TCPIP] Fix bugcheck when using fragmented datagrams
...
Memory was allocated from paged pool, and freed at DISPATCH_LEVEL,
leading to the following bugcheck:
*** Fatal System Error: 0x000000c2
(0x00000009,0x00000002,0x00000001,0xB7C8A268)
Entered debugger on embedded INT3 at 0x0008:0x8058324B.
kdb:> bt
Eip:
<ntoskrnl.exe:18324c (sdk/lib/rtl/i386/debug_asm.S:56 (RtlpBreakWithStatusInstruction))>
<ntoskrnl.exe:89b21 (ntoskrnl/ke/bug.c:1066 (KeBugCheckWithTf))>
<ntoskrnl.exe:8a08b (ntoskrnl/ke/bug.c:1413 (KeBugCheckEx))>
<ntoskrnl.exe:abb1d (ntoskrnl/mm/ARM3/expool.c:431 (ExFreePoolWithTag))>
<tcpip.sys:13e42 (sdk/lib/drivers/ip/network/receive.c:114 (FreeIPDR))>
<tcpip.sys:14e09 (sdk/include/ddk/wdm.h:11462 (IPDatagramReassemblyTimeout))>
<tcpip.sys:11604 (sdk/lib/drivers/ip/network/ip.c:135 (IPTimeoutDpcFn))>
<ntoskrnl.exe:8b7d0 (ntoskrnl/ke/dpc.c:282 (KiTimerExpiration))>
<ntoskrnl.exe:8c2c8 (ntoskrnl/ke/dpc.c:592 (KiRetireDpcList))>
<ntoskrnl.exe:1420b2 (ntoskrnl/ke/i386/thrdini.c:294 (KiIdleLoop))>
<ntoskrnl.exe:23a54a (ntoskrnl/ke/i386/kiinit.c:687 (KiSystemStartupBootStack))>
2021-06-27 17:45:53 +02:00
Joachim Henze
cb408102cc
[EXT2] Fix filesystem corruption regressions CORE-17572 CORE-17195
...
It regressed when we upgraded Ext2Fsd to version 0.69 from version 0.68
via CORE-13980 in 0.4.8-dev-117-g a1d7e9936d
The fix is a partial revert of that.
Thanks to the patches author Doug Lyons.
VBox https://reactos.org/testman/compare.php?ids=77904,77908 LGTM
KVM https://reactos.org/testman/compare.php?ids=77903,77907 LGTM
2021-06-27 16:21:32 +02:00
Timo Kreuzer
16e988d108
[HAL:APIC] Improve code
...
- Use an enum for the APIC registers
- Add support routine for SMP.
2021-06-26 21:10:43 +02:00
George Bișoc
e8277e51e2
[CSRSS] Fix MSVC AMD64 build
2021-06-25 12:42:02 +02:00
George Bișoc
03636df1e3
[CSRSS] Enable compilation of raise hard error function call code
...
With introduction of 74e527b
, a330b56
and subsequently 2791ecd
ReactOS can now properly set IOPL (I/O privilege level) for user mode trusted processes. With that said, enable the compilation of raise hard error function call code back.
2021-06-25 11:55:35 +02:00
George Bișoc
f144ba8d8b
[CSRSS] Do not give IOPL to the Client/Server native process if ran on a AMD64 system
...
ProcessUserModeIOPL is strictly implemented for 32-bit architecture so it doesn't make any sense for CSRSS to gather user mode I/O privilege when that won't work anyway.
2021-06-25 10:33:28 +02:00
George Bișoc
2791ecd303
[NTOS:PS] Fix several issues within info classes in AMD64 build
...
ProcessUserModeIOPL, ProcessWow64Information and ThreadZeroTlsCell classes fail on AMD64 build because of wrong IQS values assigned to them. Also explicitly tell the compiler that ProcessUserModeIOPL is strictly for x86 as user mode I/O privilege level is 32-bit stuff.
In addition to that, implement IQS_NO_TYPE_LENGTH macro which it'll be used for classes such as ProcessUserModeIOPL where type length is not required and that it should be 0. With that said, we indirectly fix a size length mismatch issue with ProcessUserModeIOPL on 32-bit of ReactOS as well.
2021-06-25 10:33:18 +02:00
Jérôme Gardou
59cddd15e2
[NTOS:MM] Implement MmFlushImageSection(MmFlushForDelete)
...
CORE-17544
2021-06-25 10:28:51 +02:00
Jérôme Gardou
b3e9c89725
[NTOS:MM] Simplify refcounting when adding/deleting a page in a shared segment
...
CORE-17544
2021-06-25 10:28:51 +02:00
Jérôme Gardou
bec42b6530
[NTOS:MM] Do not call ExAllocatePool* with PFN lock acquired
...
Unsurprisingly, it actually might acquire it
2021-06-25 10:28:51 +02:00
He Yang
42e111f26b
[ATL] Close m_hKey in CRegKey destructor and when attaching to a new key ( #3764 )
2021-06-24 23:50:01 +02:00
Jérôme Gardou
aa2697df2d
[NTOSKRNL] Enforce -fno-common on GCC & CLang builds
2021-06-24 18:48:31 +02:00
Jérôme Gardou
c6e9fea844
[NTOSKRNL] Deduplicate some symbols
2021-06-24 18:48:31 +02:00