2 dirops.c | 10 +++++++---
4 salvage_dir_inodes.c | 18 ++----------------
7 5 files changed, 12 insertions(+), 19 deletions(-)
9 --- e2salvage-0.0.8a/src/dirops.c.orig 2003-10-07 22:49:36.000000000 +0200
10 +++ e2salvage-0.0.8a/src/dirops.c 2005-06-15 21:39:52.000000000 +0200
13 myreclen = EXT2_DIR_REC_LEN(strlen(name));
15 - for (dirent = (struct ext2_dir_entry_2 *)block; (void *)dirent < ((void *)block)+blocksize; ((void *)dirent) += dirent->rec_len) {
16 + for (dirent = (struct ext2_dir_entry_2 *)block; (void *)dirent < ((void *)block) + blocksize; dirent = (void*)dirent + dirent->rec_len) {
17 if (dirent->rec_len - dirent->name_len >= myreclen) {
18 orig_rec_len = dirent->rec_len;
19 dirent->rec_len = EXT2_DIR_REC_LEN(dirent->name_len);
20 orig_rec_len -= dirent->rec_len;
22 - ((void *)dirent) += dirent->rec_len;
23 + dirent = (void*)dirent + dirent->rec_len;
26 dirent->rec_len = orig_rec_len;
28 int dirent_del(char * block, __u32 inum, __u32 lost_found_ino)
30 struct ext2_dir_entry_2 * dirent, * ldirent;
31 - for (ldirent = NULL, dirent = (struct ext2_dir_entry_2 *)block; (void *)dirent < ((void *)block)+blocksize; ldirent = dirent, ((void *)dirent) += dirent->rec_len)
32 + for (ldirent = NULL,
33 + dirent = (struct ext2_dir_entry_2 *)block;
34 + (void *)dirent < ((void *)block)+blocksize;
36 + dirent = (void*)dirent + dirent->rec_len)
37 if (dirent->inode == inum) {
39 fprintf(stderr, "Internal error 32762:6448\n");
40 --- e2salvage-0.0.8a/src/find_inodes.c.orig 2003-10-07 22:49:37.000000000 +0200
41 +++ e2salvage-0.0.8a/src/find_inodes.c 2005-06-15 21:40:34.000000000 +0200
50 --- e2salvage-0.0.8a/src/salvage_dir_inodes.c.orig 2003-10-07 22:49:37.000000000 +0200
51 +++ e2salvage-0.0.8a/src/salvage_dir_inodes.c 2005-06-15 21:42:33.000000000 +0200
58 #include <linux/ext2_fs.h>
64 -static int invalid_inode_block( __u32 block )
65 -{ struct mem_inode_s *p;
66 - for(p=mem_inodes;p!=NULL;p=p->next)
67 - if( p->block==block )
72 - { fprintf(stderr,"!!!!!!!!!!\n");
79 static int set_inode_number_block( struct mem_inode_s *ib, __u32 num )
80 { struct mem_inode_s *p;
84 static int fix_two_inode_bloks( struct mem_inode_s *ib, struct mem_inode_s *in )
85 { struct mem_inode_s *p;
86 - int i,ofs[128],nofs=0;
87 + int ofs[128], nofs=0;
89 if( ib->block_offset!=in->block_offset )
90 { set_inode_number_block(ib,in->inode_nr);
91 --- e2salvage-0.0.8a/src/user_interface.c.orig 2003-10-07 22:49:37.000000000 +0200
92 +++ e2salvage-0.0.8a/src/user_interface.c 2005-06-15 21:41:22.000000000 +0200
101 --- e2salvage-0.0.8a/src/write_inodes.c.orig 2003-10-07 22:49:37.000000000 +0200
102 +++ e2salvage-0.0.8a/src/write_inodes.c 2005-06-15 21:41:38.000000000 +0200
104 #include <sys/stat.h>
105 #include <sys/time.h>