diff options
author | H. Peter Anvin <hpa@zytor.com> | 2010-03-06 18:08:28 -0800 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2010-03-06 18:08:28 -0800 |
commit | b84aec6ed33e657621465eb9c7d700a122d88e29 (patch) | |
tree | 7042446822806db2e3958fc7882658ee04574b7d /core/fs/fs.c | |
parent | 8c9d059b1584310dcbc39f3bc81d4c8401f6e78b (diff) | |
download | syslinux-b84aec6ed33e657621465eb9c7d700a122d88e29.tar.gz |
pxe: use an inode structure for pxesyslinux-4.00-pre36
Use an inode structure for PXE as well. Even though this is really
rather superfluous in the case of PXE, it eliminates an ugly special
case in the generic code.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'core/fs/fs.c')
-rw-r--r-- | core/fs/fs.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/core/fs/fs.c b/core/fs/fs.c index ae261b13..8d946903 100644 --- a/core/fs/fs.c +++ b/core/fs/fs.c @@ -150,7 +150,7 @@ void pm_searchdir(com32sys_t *regs) regs->eflags.l |= EFLAGS_ZF; } else { regs->esi.w[0] = rv; - regs->eax.l = handle_to_file(rv)->file_len; + regs->eax.l = handle_to_file(rv)->inode->size; regs->eflags.l &= ~EFLAGS_ZF; } } @@ -172,7 +172,7 @@ int searchdir(const char *name) if (file->fs->fs_ops->searchdir) { file->fs->fs_ops->searchdir(name, file); - if (file->open_file) + if (file->inode) return file_to_handle(file); else goto err; @@ -274,7 +274,6 @@ int searchdir(const char *name) file->inode = inode; file->offset = 0; - file->file_len = inode->size; dprintf("File %s -> %p (inode %p) len %u\n", name, file, inode, inode->size); @@ -304,7 +303,7 @@ int open_file(const char *name, struct com32_filedata *filedata) if (rv >= 0) { file = handle_to_file(rv); - filedata->size = file->file_len; + filedata->size = file->inode->size; filedata->blocklg2 = SECTOR_SHIFT(file->fs); filedata->handle = rv; } @@ -325,7 +324,7 @@ void pm_open_file(com32sys_t *regs) } else { file = handle_to_file(rv); regs->eflags.l &= ~EFLAGS_CF; - regs->eax.l = file->file_len; + regs->eax.l = file->inode->size; regs->ecx.w[0] = SECTOR_SIZE(file->fs); regs->esi.w[0] = rv; } |