diff --git a/CHANGELOG b/CHANGELOG index 28e19b99e..28352519d 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 f753a6b70..f3a9c5399 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; }