forked from xt-sys/exectos
There is no need to allocate so much memory
This commit is contained in:
parent
eec318a362
commit
9f739df595
@ -269,11 +269,11 @@ BlpParseCommandLine(VOID)
|
|||||||
if(Status == STATUS_EFI_SUCCESS)
|
if(Status == STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Allocate more memory for option name */
|
/* Allocate more memory for option name */
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * (KeyLength + 1), (PVOID*)&Option->Name);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (KeyLength + 1), (PVOID*)&Option->Name);
|
||||||
if(Status == STATUS_EFI_SUCCESS)
|
if(Status == STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Allocate even more memory for option value */
|
/* Allocate even more memory for option value */
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * (ValueLength + 1), (PVOID*)&Option->Value);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (ValueLength + 1), (PVOID*)&Option->Value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(Status != STATUS_EFI_SUCCESS)
|
if(Status != STATUS_EFI_SUCCESS)
|
||||||
@ -390,7 +390,7 @@ BlpParseConfigFile(IN CONST PCHAR RawConfig,
|
|||||||
if(Status == STATUS_EFI_SUCCESS)
|
if(Status == STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Allocate more memory for section name */
|
/* Allocate more memory for section name */
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * (SectionLength + 1), (PVOID*)&Section->SectionName);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (SectionLength + 1), (PVOID*)&Section->SectionName);
|
||||||
}
|
}
|
||||||
if(Status != STATUS_EFI_SUCCESS)
|
if(Status != STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
@ -460,11 +460,11 @@ BlpParseConfigFile(IN CONST PCHAR RawConfig,
|
|||||||
if(Status == STATUS_EFI_SUCCESS)
|
if(Status == STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Allocate more memory for option name */
|
/* Allocate more memory for option name */
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * (KeyLength + 1), (PVOID*)&Option->Name);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (KeyLength + 1), (PVOID*)&Option->Name);
|
||||||
if(Status == STATUS_EFI_SUCCESS)
|
if(Status == STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Allocate even more memory for option value */
|
/* Allocate even more memory for option value */
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * (ValueLength + 1), (PVOID*)&Option->Value);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (ValueLength + 1), (PVOID*)&Option->Value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(Status != STATUS_EFI_SUCCESS)
|
if(Status != STATUS_EFI_SUCCESS)
|
||||||
|
@ -200,7 +200,7 @@ BlInvokeBootProtocol(IN PLIST_ENTRY OptionsList)
|
|||||||
/* Check a length of modules list */
|
/* Check a length of modules list */
|
||||||
ModuleListLength = RtlWideStringLength(Option->Value, 0);
|
ModuleListLength = RtlWideStringLength(Option->Value, 0);
|
||||||
|
|
||||||
Status = BlAllocateMemoryPool(sizeof(PWCHAR) * ModuleListLength, (PVOID *)&ModulesList);
|
Status = BlAllocateMemoryPool(sizeof(WCHAR) * (ModuleListLength + 1), (PVOID *)&ModulesList);
|
||||||
if(Status != STATUS_EFI_SUCCESS)
|
if(Status != STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
/* Failed to allocate memory, print error message and return status code */
|
/* Failed to allocate memory, print error message and return status code */
|
||||||
@ -209,7 +209,7 @@ BlInvokeBootProtocol(IN PLIST_ENTRY OptionsList)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Make a copy of modules list */
|
/* Make a copy of modules list */
|
||||||
RtlCopyMemory(ModulesList, Option->Value, sizeof(PWCHAR) * ModuleListLength);
|
RtlCopyMemory(ModulesList, Option->Value, sizeof(WCHAR) * (ModuleListLength + 1));
|
||||||
}
|
}
|
||||||
else if(RtlCompareWideStringInsensitive(Option->Name, L"SYSTEMTYPE", 0) == 0)
|
else if(RtlCompareWideStringInsensitive(Option->Name, L"SYSTEMTYPE", 0) == 0)
|
||||||
{
|
{
|
||||||
@ -219,7 +219,7 @@ BlInvokeBootProtocol(IN PLIST_ENTRY OptionsList)
|
|||||||
else if(RtlCompareWideStringInsensitive(Option->Name, L"SYSTEMPATH", 0) == 0)
|
else if(RtlCompareWideStringInsensitive(Option->Name, L"SYSTEMPATH", 0) == 0)
|
||||||
{
|
{
|
||||||
/* System path found, get volume device path */
|
/* System path found, get volume device path */
|
||||||
Status = BlGetVolumeDevicePath((PWCHAR)Option->Value, &BootParameters.DevicePath,
|
Status = BlGetVolumeDevicePath(Option->Value, &BootParameters.DevicePath,
|
||||||
&BootParameters.ArcName, &BootParameters.SystemPath);
|
&BootParameters.ArcName, &BootParameters.SystemPath);
|
||||||
if(Status != STATUS_EFI_SUCCESS)
|
if(Status != STATUS_EFI_SUCCESS)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user