libext2fs: fix infinite loop if copying in an empty directory

In m_minrootdir, on FreeBSD 9.3, try_lseek_copy() fails on an empty file
because errcode is uninitialized and the while() loop never executes,
and the errcode garbage is returned.

Initialize errcode = 0 in try_lseek_copy() to avoid a "fail" result when
there was nothing to copy.

Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
next
Matthias Andree 2016-07-22 01:20:10 +02:00 committed by Theodore Ts'o
parent 32448f50df
commit c2c5c58593
1 changed files with 1 additions and 1 deletions

View File

@ -450,7 +450,7 @@ static errcode_t try_lseek_copy(ext2_filsys fs, int fd, struct stat *statbuf,
{
off_t data = 0, hole;
off_t data_blk, hole_blk;
errcode_t err;
errcode_t err = 0;
/* Try to use SEEK_DATA and SEEK_HOLE */
while (data < statbuf->st_size) {