From 48d1e7f04c741d67399383dca59fe06bbb55249d Mon Sep 17 00:00:00 2001 From: Rafal Kupiec Date: Mon, 29 Jan 2024 19:41:52 +0100 Subject: [PATCH] Properly copy kernel parameters into the loader block --- xtldr/modules/xtos_o/xtos.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xtldr/modules/xtos_o/xtos.c b/xtldr/modules/xtos_o/xtos.c index 4231dce..701cd4a 100644 --- a/xtldr/modules/xtos_o/xtos.c +++ b/xtldr/modules/xtos_o/xtos.c @@ -468,7 +468,8 @@ XtpInitializeLoaderBlock(IN PXTBL_PAGE_MAPPING PageMap, // } /* Copy parameters to kernel initialization block */ - RtlCopyMemory(&LoaderBlock->KernelParameters, Parameters->Parameters, RtlWideStringLength(Parameters->Parameters, 0)); + RtlCopyMemory(LoaderBlock->KernelParameters, Parameters->Parameters, + (RtlWideStringLength(Parameters->Parameters, 0) + 1) * sizeof(WCHAR)); /* Map kernel initialization block */ XtLdrProtocol->Memory.MapVirtualMemory(PageMap, *VirtualAddress, (PVOID)LoaderBlock,