tree 6e8b5ebe7bfe3d2523649966e7b0894a143b7f09
parent 00e5433eb5e9f70f485968b809fdcf297d7fe7b9
author Theodore Ts'o <tytso@mit.edu> 875900548 +0000
committer Theodore Ts'o <tytso@mit.edu> 875900548 +0000

ChangeLog, bmove.c, icount.c, inode.c, llseek.c:
  llseek.c (ext2fs_llseek): Fix type error for ext2fs_llseek()
  icount.c (ext2fs_icount_validate):
  bmove.c (process_block): Fix lint error in type for fprintf().
  inode.c (ext2fs_check_directory): Add support for the callback
  	to return the error code EXT2_ET_CALLBACK_NOTHANDLED.
ChangeLog, mke2fs.c:
  Make parse_raid_opts return a void, to fix a -Wall warning.

