Index: boot/freeldr/freeldr/arch/i386/hwdisk.c =================================================================== --- boot/freeldr/freeldr/arch/i386/hwdisk.c (Revision 57281) +++ boot/freeldr/freeldr/arch/i386/hwdisk.c (Arbeitskopie) @@ -130,7 +130,7 @@ 1, (PVOID)DISKREADBUFFER); if (!ret) - return EIO; + break; RtlCopyMemory(Ptr, (PVOID)DISKREADBUFFER, Length); Ptr += Length; *Count += Length; @@ -138,7 +138,9 @@ i++; } - return ESUCCESS; + *Count = Ptr - (UCHAR *)Buffer; + + return (!ret) ? EIO : ESUCCESS; } static LONG DiskSeek(ULONG FileId, LARGE_INTEGER* Position, SEEKMODE SeekMode)