diff --git a/reactos/boot/freeldr/freeldr/arch/arm/macharm.c b/reactos/boot/freeldr/freeldr/arch/arm/macharm.c index da28a9b269f..160a300a15b 100644 --- a/reactos/boot/freeldr/freeldr/arch/arm/macharm.c +++ b/reactos/boot/freeldr/freeldr/arch/arm/macharm.c @@ -13,6 +13,7 @@ /* GLOBALS ********************************************************************/ PARM_BOARD_CONFIGURATION_BLOCK ArmBoardBlock; +ULONG BootDrive, BootPartition; /* FUNCTIONS ******************************************************************/ diff --git a/reactos/boot/freeldr/freeldr/reactos/imageldr.c b/reactos/boot/freeldr/freeldr/reactos/imageldr.c index 94539f2dc4c..eb38128c70a 100644 --- a/reactos/boot/freeldr/freeldr/reactos/imageldr.c +++ b/reactos/boot/freeldr/freeldr/reactos/imageldr.c @@ -492,13 +492,18 @@ FrLdrMapImage(IN FILE *Image, /* Allocate a temporary buffer for the read */ ReadBuffer = MmHeapAlloc(ImageSize); - + /* Load the file image */ - FsReadFile(Image, ImageSize, NULL, ReadBuffer); - + if (!FsReadFile(Image, ImageSize, NULL, ReadBuffer)) + { + /* Fail */ + DbgPrint("Failed to read image: %s\n", Name); + return NULL; + } + /* Map it into virtual memory */ ImageSize = FrLdrReMapImage(ReadBuffer, LoadBase); - + /* Free the temporary buffer */ MmHeapFree(ReadBuffer);