diff options
Diffstat (limited to 'lib/ext2fs/dirblock.c')
-rw-r--r-- | lib/ext2fs/dirblock.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/ext2fs/dirblock.c b/lib/ext2fs/dirblock.c index bb2f7175..3d5dbb2b 100644 --- a/lib/ext2fs/dirblock.c +++ b/lib/ext2fs/dirblock.c @@ -27,7 +27,7 @@ errcode_t ext2fs_read_dir_block(ext2_filsys fs, blk_t block, retval = io_channel_read_blk(fs->io, block, 1, buf); if (retval) return retval; - if ((fs->flags & EXT2_SWAP_BYTES) == 0) + if ((fs->flags & (EXT2_SWAP_BYTES|EXT2_SWAP_BYTES_READ)) == 0) return 0; p = buf; end = (char *) buf + fs->blocksize; @@ -49,7 +49,8 @@ errcode_t ext2fs_write_dir_block(ext2_filsys fs, blk_t block, char *buf = 0; struct ext2_dir_entry *dirent; - if (fs->flags & EXT2_SWAP_BYTES) { + if ((fs->flags & EXT2_SWAP_BYTES) || + (fs->flags & EXT2_SWAP_BYTES_WRITE)) { write_buf = buf = malloc(fs->blocksize); if (!buf) return ENOMEM; |