reactos/sdk/lib/rtl
Joachim Henze b692935bcd [0.4.13][SDK:RTL] RtlpCallQueryRegistryRoutine(): Correctly set SpareData and SpareLength (#5466)
ports back:
0.4.15-dev-6640-g 02883d1c16

SpareData and SpareLength need to be calculated correctly, as they are used
later in that function as well.
This allows to not overwrite Source UString when writing to Destination UString.

Fixes the problem described in the following JIRA issue, where services could
not start in 2nd-stage-bootcd-setup when installing ReactOS in a very-long-named directory.

CORE-18988
2023-10-21 22:16:31 +02:00
..
amd64 [REACTOS] Fix 64 bit build (#465) 2018-04-03 15:13:17 -06:00
arm
i386 [RTL] Make RtlFillMemoryUlonglong public 2017-11-18 18:05:22 +01:00
powerpc
access.c
acl.c
actctx.c [NTDLL] Use the embedded manifest from the process to check compatibility. 2019-08-21 18:57:52 +02:00
appverifier.c
assert.c [REACTOS] RtlAssert(): use "%lu" as LineNumber format. 2018-08-08 21:24:07 +02:00
atom.c
avlsupp.c
avltable.c
bitmap.c
bitmap64.c
bootdata.c [RTL]: Document and flesh out Boot Status Data (BSD) API/Structures 2018-02-04 09:33:32 -08:00
byteswap.c
CMakeLists.txt [RTL]: Document and flesh out Boot Status Data (BSD) API/Structures 2018-02-04 09:33:32 -08:00
compress.c
crc32.c
critical.c [RTL] Fix failure check in RtlpCreateCriticalSectionSem. 2019-06-25 09:26:05 +02:00
dbgbuffer.c
debug.c [SDK] Reset InDbgPrint state when an exception occurs 2019-01-05 15:21:40 +01:00
dos8dot3.c
encode.c
env.c
error.c
exception.c
generictable.c
handle.c
heap.c [RTL] Fix GCC build. 2019-02-17 09:59:49 +01:00
heap.h
heapdbg.c
heappage.c
heapuser.c
image.c [0.4.13][WIN32SS][RTL] Fix regression CORE-16769 + BSOD CORE-13907 & CORE-14857 2020-04-03 14:51:10 +02:00
interlck.c
largeint.c
luid.c
mem.c
memstream.c [NTOS][NDK][RTL] A bunch of 'wrong size' fixes 2017-12-20 06:56:09 +01:00
message.c
network.c [REACTOS] Fix SIZE_T related warnings 2019-08-15 14:20:00 +02:00
nls.c
path.c [REACTOS] Fix SIZE_T related warnings 2019-08-15 14:20:00 +02:00
ppb.c
prefix.c
priv.c
process.c
propvar.c
random.c
rangelist.c
readme.txt
registry.c [0.4.13][SDK:RTL] RtlpCallQueryRegistryRoutine(): Correctly set SpareData and SpareLength (#5466) 2023-10-21 22:16:31 +02:00
res.c
resource.c
rtl.h
rtlavl.h
rtlp.h [NTDLL] Use the embedded manifest from the process to check compatibility. 2019-08-21 18:57:52 +02:00
rxact.c [NDK] Fix alignment macros and add missing ones 2018-07-01 14:45:21 +02:00
sd.c
security.c [RTL] Fix RtlNewSecurityGrantedAccess improperly zeroing output buffer 2018-12-31 11:19:36 +01:00
sid.c
slist.c
splaytree.c
sysvol.c [RTL]: Document and flesh out Boot Status Data (BSD) API/Structures 2018-02-04 09:33:32 -08:00
thread.c [KERNEL32][RTL] Diverse fixes/improvements for thread stack creation code. (#802) 2019-08-01 19:04:13 +02:00
time.c
timerqueue.c
timezone.c
trace.c
unicode.c
unicodeprefix.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.