summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYaroslav K <yar444@gmail.com>2016-08-08 20:32:15 -0700
committerBin Meng <bmeng.cn@gmail.com>2016-08-16 11:44:09 +0800
commitcc7ed269341fb48b6453d013cc79ac15cb497f04 (patch)
tree961e84f9ff9f1f0986e1c63abe5f53a080eff753
parentcd379a2dc892e3ea1370b313036751629395aefa (diff)
downloadu-boot-cc7ed269341fb48b6453d013cc79ac15cb497f04.tar.gz
u-boot-cc7ed269341fb48b6453d013cc79ac15cb497f04.tar.bz2
u-boot-cc7ed269341fb48b6453d013cc79ac15cb497f04.zip
cbfs: Fix incorrect CBFS file header size being used
This fixes incorrect filenames in cbfsls output. Signed-off-by: Yaroslav K. <yar444@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> [clean up checkpatch errors and warnings] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
-rw-r--r--fs/cbfs/cbfs.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/cbfs/cbfs.c b/fs/cbfs/cbfs.c
index 95a48a46f5..6e1107d751 100644
--- a/fs/cbfs/cbfs.c
+++ b/fs/cbfs/cbfs.c
@@ -97,8 +97,8 @@ static int file_cbfs_next_file(u8 *start, u32 size, u32 align,
}
swap_file_header(&header, fileHeader);
- if (header.offset < sizeof(const struct cbfs_cachenode *) ||
- header.offset > header.len) {
+ if (header.offset < sizeof(struct cbfs_fileheader) ||
+ header.offset > header.len) {
file_cbfs_result = CBFS_BAD_FILE;
return -1;
}
@@ -106,9 +106,9 @@ static int file_cbfs_next_file(u8 *start, u32 size, u32 align,
newNode->type = header.type;
newNode->data = start + header.offset;
newNode->data_length = header.len;
- name_len = header.offset - sizeof(struct cbfs_cachenode *);
+ name_len = header.offset - sizeof(struct cbfs_fileheader);
newNode->name = (char *)fileHeader +
- sizeof(struct cbfs_cachenode *);
+ sizeof(struct cbfs_fileheader);
newNode->name_length = name_len;
newNode->checksum = header.checksum;