reactos/sdk/lib/rtl
Timo Kreuzer 5eab2ddb2e [RTL/x64] Do not overwrite the original context during exception handling
This fixes ExceptionContinueExecution cases, where we want to continue execution on the original context (or as modified by the handler), not on some halfway unwinded one.
2024-09-12 17:07:59 +03:00
..
amd64 [RTL/x64] Do not overwrite the original context during exception handling 2024-09-12 17:07:59 +03:00
arm
i386
access.c
acl.c [SDK:RTL] Fix the ACE revision check in RtlpAddKnownObjectAce 2023-08-22 17:54:18 +02:00
actctx.c [RTL] Sync actctx.c to wine-5.18 (#6848) 2024-07-09 11:35:41 +03:00
appverifier.c
assert.c
atom.c Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
avlsupp.c
avltable.c
bitmap.c
bitmap64.c
bootdata.c
byteswap.c
CMakeLists.txt [CMAKE] Use COMPILE_OPTIONS instead of superseded COMPILE_FLAGS 2024-08-21 11:34:48 +03:00
compress.c
condvar.c [KERNEL32_VISTA][SDK] Move SRW definitions to NDK (#6806) 2024-06-11 22:03:57 +02:00
crc32.c [DBGHELP][NDK][RTL] *RtlComputeCrc32(): Add 'const' to 2nd parameter (#6973) 2024-06-04 13:35:57 +02:00
critical.c [RTL] Satisfy the RtlpTimeoutDisable condition when waiting for critical sections (#4089) 2023-09-21 13:33:28 +02:00
dbgbuffer.c
debug.c [RTL] Fix overflow case in vDbgPrintExWithPrefixInternal 2024-08-30 06:38:29 +03:00
dos8dot3.c
encode.c
env.c
error.c
exception.c
generictable.c
handle.c [REACTOS] Fix typos in comments (#5591) 2023-08-22 16:20:29 +03:00
heap.c [RTL] Avoid some corner case ASSERT's in heap.c and fix heap allocations larger than MAXUSHORT. (#5750) 2024-07-08 23:09:34 -05:00
heap.h [RTL] Implement RtlGetProcessHeaps 2023-12-17 22:28:24 +01:00
heapdbg.c
heappage.c
heapuser.c [RTL] Implement RtlGetProcessHeaps 2023-12-17 22:28:24 +01:00
image.c [NTDLL:LDR] Little fixes about SAL annotation and behavior (#5793) 2023-11-15 20:59:32 +01:00
interlck.c
largeint.c
luid.c
mem.c
memstream.c
message.c
network.c
nls.c
path.c
ppb.c
prefix.c
priv.c [NTDLL] Fix some vista exports 2023-08-11 19:00:42 +03:00
process.c
propvar.c
random.c
rangelist.c
readme.txt
registry.c [SDK:RTL] RtlpCallQueryRegistryRoutine(): Correctly set SpareData and SpareLength (#5466) 2023-09-20 18:06:06 +02:00
res.c
resource.c
rtl.h
rtl_vista.h
rtlavl.h
rtlp.h
runonce.c [KERNEL32][RTL] Implement One-Time initialization API and improve RTL support (#5046) 2023-09-06 15:40:53 -07:00
rxact.c
sd.c [RTL] Improve usage of absolte vs self-relative security descriptors 2023-09-26 18:01:45 +03:00
security.c
sid.c
slist.c [RTL/x64] Fix a GCC compiler warning 2024-03-19 07:42:35 +01:00
splaytree.c
srw.c
sysvol.c
thread.c
time.c
timerqueue.c
timezone.c
trace.c
unicode.c [RTL][NTDLL] Implement and export RtlCompareUnicodeStrings 2023-08-19 23:52:21 +03:00
unicodeprefix.c
utf8.c
vectoreh.c
version.c
wait.c
workitem.c

RTL restrictions:

ExAllocatePool (and friends) must be used exclusively. RtlAllocateHeap (and friends) must NOT be used! ExAllocatePool (and friends) translate to RtlAllocateHeap (and friends) in ntdll\rtl\libsupp.c.

RtlEnterCriticalSection (and friends) must be used exclusively. ExAcquireFastMutex (and friends) must NOT be used! RtlEnterCriticalSection (and friends) translate to ExAcquireFastMutex (and friends) in ntoskrnl\rtl\libsupp.c. This means that RtlEnterCriticalSection (and friends) can NOT be used recursively in RTL. The reason for choosing RtlEnterCriticalSection (and friends) over ExAcquireFastMutex (and friends) is that the FAST_MUTEX struct is smaller than the RTL_CRITICAL_SECTION struct.