Fix function type mismatch undefined behavior when calling through a pointer

这个提交包含在:
2024-06-09 22:26:01 +02:00
父节点 3097ff6250
当前提交 bd7d4f5a0d
修改 3 个文件,包含 4 行新增4 行删除

查看文件

@@ -40,7 +40,7 @@
#define XTBL_TUI_MAX_DIALOG_WIDTH 100
/* XTLDR Routine pointers */
typedef LONG (*PBL_GET_MEMTYPE_ROUTINE)(IN LONG EfiMemoryType);
typedef LONG (*PBL_GET_MEMTYPE_ROUTINE)(IN EFI_MEMORY_TYPE EfiMemoryType);
/* Boot Loader protocol routine pointers */
typedef EFI_STATUS (*PBL_ALLOCATE_PAGES)(IN ULONGLONG Size, OUT PEFI_PHYSICAL_ADDRESS Memory);

查看文件

@@ -465,7 +465,7 @@ BlpFindParentBlockDevice(IN PLIST_ENTRY BlockDevices,
OUT PEFI_BLOCK_DEVICE_DATA ParentNode);
XTCDECL
LOADER_MEMORY_TYPE
LONG
BlpGetLoaderMemoryType(IN EFI_MEMORY_TYPE EfiMemoryType);
XTCDECL

查看文件

@@ -292,7 +292,7 @@ BlMapEfiMemory(IN OUT PXTBL_PAGE_MAPPING PageMap,
if(GetMemoryTypeRoutine == NULL)
{
/* Use default memory type routine */
GetMemoryTypeRoutine = (PBL_GET_MEMTYPE_ROUTINE)BlpGetLoaderMemoryType;
GetMemoryTypeRoutine = BlpGetLoaderMemoryType;
}
/* Allocate and zero-fill buffer for EFI memory map */
@@ -703,7 +703,7 @@ BlPhysicalListToVirtual(IN PXTBL_PAGE_MAPPING PageMap,
* @since XT 1.0
*/
XTCDECL
LOADER_MEMORY_TYPE
LONG
BlpGetLoaderMemoryType(IN EFI_MEMORY_TYPE EfiMemoryType)
{
LOADER_MEMORY_TYPE MemoryType;