diff --git a/ChangeLog b/ChangeLog index 73d723af8..17dc13993 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Tue Dec 14 19:13:53 EET 2010 (edwin) +------------------------------------ + * libclamav/chmunpack.c: avoid crash on fstat failure (bb #2429). + Tue Dec 14 16:07:42 CET 2010 (tk) --------------------------------- * libclamav: pass array with initial matches to bytecode (bb#2397) diff --git a/libclamav/chmunpack.c b/libclamav/chmunpack.c index 3f4a55724..12e8eed34 100644 --- a/libclamav/chmunpack.c +++ b/libclamav/chmunpack.c @@ -678,6 +678,10 @@ int cli_chm_open(int fd, const char *dirname, chm_metadata_t *metadata, cli_ctx if (!metadata->map) { return CL_EMAP; } + } else { + char err[128]; + cli_warnmsg("fstat() failed: %s\n", cli_strerror(errno, err, sizeof(err))); + return CL_ESTAT; } if (!itsf_read_header(metadata)) {