summaryrefslogtreecommitdiffstats
path: root/src/file_pdf.c
diff options
context:
space:
mode:
authorChristophe Grenier <[email protected]>2011-10-15 12:09:51 +0200
committerChristophe Grenier <[email protected]>2011-10-15 12:09:51 +0200
commit21ec1345e9fce364a1c883ab933407428029f98c (patch)
treeb9080c21785a2bc97d9652b2260151a0cbd03823 /src/file_pdf.c
parent23ca9115bda4d2e803cc725050a5819e5822ec60 (diff)
PhotoRec: check fseek return value in pdf file validation
Diffstat (limited to 'src/file_pdf.c')
-rw-r--r--src/file_pdf.c12
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);