diff options
author | Christophe Grenier <[email protected]> | 2011-10-15 12:09:51 +0200 |
---|---|---|
committer | Christophe Grenier <[email protected]> | 2011-10-15 12:09:51 +0200 |
commit | 21ec1345e9fce364a1c883ab933407428029f98c (patch) | |
tree | b9080c21785a2bc97d9652b2260151a0cbd03823 /src/file_pdf.c | |
parent | 23ca9115bda4d2e803cc725050a5819e5822ec60 (diff) |
PhotoRec: check fseek return value in pdf file validation
Diffstat (limited to 'src/file_pdf.c')
-rw-r--r-- | src/file_pdf.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/file_pdf.c b/src/file_pdf.c index ebae85b8..8ca2cc31 100644 --- a/src/file_pdf.c +++ b/src/file_pdf.c @@ -273,7 +273,11 @@ static void file_date_pdf(file_recovery_t *file_recovery) uint64_t offset=0; unsigned int j=0; unsigned char*buffer=(unsigned char*)MALLOC(4096); - fseek(file_recovery->handle, 0, SEEK_SET); + if(fseek(file_recovery->handle, 0, SEEK_SET)<0) + { + free(buffer); + return ; + } while(offset < file_recovery->file_size) { int i; @@ -291,7 +295,11 @@ static void file_date_pdf(file_recovery_t *file_recovery) { const unsigned char *date_asc; struct tm tm_time; - fseek(file_recovery->handle, offset+i+1, SEEK_SET); + if(fseek(file_recovery->handle, offset+i+1, SEEK_SET)<0) + { + free(buffer); + return ; + } if(fread(buffer, 1, 22, file_recovery->handle) < 22) { free(buffer); |