summaryrefslogtreecommitdiff
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
parenta710d4be80a110652b9cdad97ba8ccedc73b26d2 (diff)
Fix problem with symbolic links in JFFS2 code.
-rw-r--r--CHANGELOG2
-rw-r--r--fs/jffs2/jffs2_1pass.c6
2 files changed, 7 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 28e19b99e1..28352519df 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,8 @@
Changes for U-Boot 1.1.3:
======================================================================
+* Fix problem with symbolic links in JFFS2 code.
+
* Use linker ASSERT statement to prevent undetected overlapping of
sections on PPChameleon board; other boards might use this, too.
diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c
index f753a6b70a..f3a9c53997 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;
}