-$Id: CHANGES,v 1.15 1999/11/11 16:13:57 tiniou Exp $
+$Id: CHANGES,v 1.16 1999/11/17 22:46:40 tiniou Exp $
Changes between versions 0.4b9 and 0.4b10 (released ???????????????)
====================================================================
and helping me resolve this and other minor libc5 compiling
glitches.
+2. Fix a problem when dumping a ext2fs with the 'filetype'
+ feature enabled. Thanks to Patrick J. LoPresti
+ <patl@cag.lcs.mit.edu> for reporting the bug and to
+ Theodore Y. Ts'o <tytso@mit.edu> for providing the patch.
+
Changes between versions 0.4b8 and 0.4b9 (released November 5, 1999)
====================================================================
-$Id: THANKS,v 1.8 1999/11/11 16:13:57 tiniou Exp $
+$Id: THANKS,v 1.9 1999/11/17 22:46:40 tiniou Exp $
Dump and restore were written by the people of the CSRG at the University
of California, Berkeley.
Henry Katz hkatz@hkatz.dialup.access.net
Klaus Kudielka kkudielk@cacofonix.nt.tuwien.ac.at
Florian La Roche florian@jurix.jura.uni-sb.de
+Patrick J. LoPresti patl@cag.lcs.mit.edu
Greg Lutz greglutz@ix.netcom.com
Eric Maisonobe virnet@nat.fr
David Miller davem@caip.rutgers.edu
Bernhard Sadlowski sadlowsk@Mathematik.Uni-Bielefeld.DE
Chris Siebenmann cks@utcc.utoronto.ca
Bob Snyder rsnyder@janet.advsys.com
+Theodore Y. Ts'o tytso@mit.edu
Stephen Tweedie sct@dcs.ed.ac.uk
Daniel Veillard Daniel.Veillard@imag.fr
Jason Venner jason@idiom.com
#ifndef lint
static const char rcsid[] =
- "$Id: traverse.c,v 1.7 1999/11/02 09:35:56 tiniou Exp $";
+ "$Id: traverse.c,v 1.8 1999/11/17 22:46:43 tiniou Exp $";
#endif /* not lint */
#include <sys/param.h>
p = (struct convert_dir_context *)private;
- reclen = EXT2_DIR_REC_LEN(dirent->name_len + 1);
+ reclen = EXT2_DIR_REC_LEN((dirent->name_len & 0xFF) + 1);
if (((p->offset + reclen - 1) / p->bs) != (p->offset / p->bs)) {
dp = (struct direct *)(p->buf + p->prev_offset);
dp->d_reclen += p->bs - (p->offset % p->bs);
dp->d_ino = dirent->inode;
dp->d_reclen = reclen;
dp->d_type = 0;
- dp->d_namlen = dirent->name_len;
- strncpy(dp->d_name, dirent->name, dirent->name_len);
+ dp->d_namlen = dirent->name_len & 0xFF;
+ strncpy(dp->d_name, dirent->name, dp->d_namlen);
dp->d_name[dp->d_namlen] = '\0';
p->prev_offset = p->offset;
p->offset += reclen;