From b0b01922623e183997908132c7c5e772e2ced40d Mon Sep 17 00:00:00 2001 From: Laurent Vivier Date: Mon, 2 Nov 2009 22:35:59 +0000 Subject: [PATCH] load: manage file size smaller than 512 bytes Allow to load bootinfo scripts of haiku and FreeBSD. Signed-off-by: Laurent Vivier git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@593 f158a5a8-5612-0410-a976-696ce0be7e32 --- modules/filesystems.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/filesystems.c b/modules/filesystems.c index 2da7cd0..1eabc7a 100644 --- a/modules/filesystems.c +++ b/modules/filesystems.c @@ -259,11 +259,13 @@ files_load( files_info_t *mi) size = 0; while(1) { ret = mi->fs->read( mi->file, buf, 512 ); - if (ret != 512) + if (ret <= 0) break; buf += ret; mi->filepos += ret; size += ret; + if (ret != 512) + break; } PUSH( size ); }