summaryrefslogtreecommitdiff
path: root/fs/jffs2/jffs2_1pass.c
diff options
context:
space:
mode:
authorwdenk <wdenk>2005-05-04 23:50:54 +0000
committerwdenk <wdenk>2005-05-04 23:50:54 +0000
commitcf8bc5773c27adf325d7bb1a90d290b213a57417 (patch)
treee201095a47097ee781fa18dead44c9ee75f210ef /fs/jffs2/jffs2_1pass.c
parenta710d4be80a110652b9cdad97ba8ccedc73b26d2 (diff)
downloadu-boot-imx-cf8bc5773c27adf325d7bb1a90d290b213a57417.zip
u-boot-imx-cf8bc5773c27adf325d7bb1a90d290b213a57417.tar.gz
u-boot-imx-cf8bc5773c27adf325d7bb1a90d290b213a57417.tar.bz2
Fix problem with symbolic links in JFFS2 code.
Diffstat (limited to 'fs/jffs2/jffs2_1pass.c')
-rw-r--r--fs/jffs2/jffs2_1pass.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c
index f753a6b..f3a9c53 100644
--- a/fs/jffs2/jffs2_1pass.c
+++ b/fs/jffs2/jffs2_1pass.c
@@ -760,7 +760,11 @@ jffs2_1pass_list_inodes(struct b_lists * pL, u32 pino)
if (jNode->ino == jDir->ino && jNode->version >= i_version) {
if (i)
put_fl_mem(i);
- i = get_fl_mem(b2->offset, sizeof(*i), NULL);
+
+ if (jDir->type == DT_LNK)
+ i = get_node_mem(b2->offset);
+ else
+ i = get_fl_mem(b2->offset, sizeof(*i), NULL);
}
b2 = b2->next;
}