summaryrefslogtreecommitdiff
path: root/com32/gfxboot/gfxboot.c
diff options
context:
space:
mode:
authorSebastian Herbszt <herbszt@gmx.de>2009-12-08 21:05:28 +0100
committerSebastian Herbszt <herbszt@gmx.de>2009-12-08 21:05:28 +0100
commit9315750647b4ff1f323b4cfc20ca1a13ef74b634 (patch)
treef8a2370e85b8d0ff802fd689838f4e41f53231fd /com32/gfxboot/gfxboot.c
parentec8334ed7c0c3579950aedc8ff91f7ed031c38af (diff)
downloadsyslinux-9315750647b4ff1f323b4cfc20ca1a13ef74b634.tar.gz
gfxboot: accept plain boot logo files
Don't force the boot logo file to be a cpio archive. Signed-off-by: Sebastian Herbszt <herbszt@gmx.de>
Diffstat (limited to 'com32/gfxboot/gfxboot.c')
-rw-r--r--com32/gfxboot/gfxboot.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/com32/gfxboot/gfxboot.c b/com32/gfxboot/gfxboot.c
index e1b865a1..c415bad4 100644
--- a/com32/gfxboot/gfxboot.c
+++ b/com32/gfxboot/gfxboot.c
@@ -424,7 +424,7 @@ unsigned magic_ok(unsigned char *buf, unsigned *code_size)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-// Search cpio archive for gfx file.
+// Search (cpio archive) for gfx file.
//
unsigned find_file(unsigned char *buf, unsigned len, unsigned *gfx_file_start, unsigned *file_len, unsigned *code_size)
{
@@ -433,6 +433,8 @@ unsigned find_file(unsigned char *buf, unsigned len, unsigned *gfx_file_start, u
*gfx_file_start = 0;
*code_size = 0;
+ if((code_start = magic_ok(buf, code_size))) return code_start;
+
for(i = 0; i < len;) {
if((len - i) >= 0x1a && (buf[i] + (buf[i + 1] << 8)) == 0x71c7) {
fname_len = *(unsigned short *) (buf + i + 20);