From 9aa6d6913af106c71e7d0f2738c9ae8a8d0868cd Mon Sep 17 00:00:00 2001 From: belliash Date: Mon, 7 Nov 2022 15:53:50 +0100 Subject: [PATCH] Store ARC name as well as system path --- xtldr/volume.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/xtldr/volume.c b/xtldr/volume.c index 4bd2fa3..bd2f666 100644 --- a/xtldr/volume.c +++ b/xtldr/volume.c @@ -589,7 +589,7 @@ BlpDissectVolumeArcPath(IN PUCHAR SystemPath, OUT PULONG DriveNumber, OUT PULONG PartNumber) { - PUCHAR ArcPath; + PUCHAR ArcPath, LocalArcName; ULONG ArcLength = 0; /* Set default values */ @@ -713,9 +713,13 @@ BlpDissectVolumeArcPath(IN PUCHAR SystemPath, *Path = SystemPath + ArcLength; } + /* Store ARC name if possible */ if(ArcName) { - /* TODO: Store ARC path in ArcName */ + BlEfiMemoryAllocatePool(ArcLength, (PVOID *)&LocalArcName); + RtlCopyMemory(LocalArcName, SystemPath, ArcLength); + LocalArcName[ArcLength] = '\0'; + *ArcName = LocalArcName; } /* Return success */