diff -ur genext2fs-1.3/genext2fs.c genext2fs-1.3-/genext2fs.c --- genext2fs-1.3/genext2fs.c Mon Jun 18 08:11:32 2001 +++ genext2fs-1.3-/genext2fs.c Tue Apr 9 13:28:37 2002 @@ -983,7 +983,9 @@ { int i; int nblk = nod->i_blocks / INOBLK; - if((nod->i_size && !nblk) || (nod->i_mode & (FM_IFBLK | FM_IFCHR))) + if((nod->i_size && !nblk) || + (nod->i_mode & FM_IFBLK) == FM_IFBLK || + (nod->i_mode & FM_IFCHR) == FM_IFCHR) for(i = 0; i <= EXT2_TIND_BLOCK; i++) nod->i_block[i] = swab32(nod->i_block[i]); if(nblk <= EXT2_IND_BLOCK) @@ -1004,7 +1006,9 @@ { int i; int nblk = nod->i_blocks / INOBLK; - if((nod->i_size && !nblk) || (nod->i_mode & (FM_IFBLK | FM_IFCHR))) + if((nod->i_size && !nblk) || + (nod->i_mode & FM_IFBLK) == FM_IFBLK || + (nod->i_mode & FM_IFCHR) == FM_IFCHR) for(i = 0; i <= EXT2_TIND_BLOCK; i++) nod->i_block[i] = swab32(nod->i_block[i]); if(nblk <= EXT2_IND_BLOCK)