summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristophe Grenier <[email protected]>2011-10-15 12:09:41 +0200
committerChristophe Grenier <[email protected]>2011-10-15 12:09:41 +0200
commit23ca9115bda4d2e803cc725050a5819e5822ec60 (patch)
treeca1837393af4c00232f12e7cc973ed29678885a1 /src
parentfc97dd06e0fc04d61e53ec8d1003f91240ebe37d (diff)
PhotoRec: check fseek return value in nk2 file validation
Diffstat (limited to 'src')
-rw-r--r--src/file_nk2.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/file_nk2.c b/src/file_nk2.c
index c103ae9c..ee1b31b7 100644
--- a/src/file_nk2.c
+++ b/src/file_nk2.c
@@ -109,16 +109,12 @@ static void file_check_nk2(file_recovery_t *fr)
{
nk2Header nk2h;
unsigned int i;
- fseek(fr->handle, 0, SEEK_SET);
fr->file_size = 0;
fr->offset_error=0;
fr->offset_ok=0;
- if (fread(&nk2h, sizeof(nk2h), 1, fr->handle)!=1)
- {
- fr->offset_error=fr->file_size;
- fr->file_size=0;
+ if(fseek(fr->handle, 0, SEEK_SET) < 0 ||
+ fread(&nk2h, sizeof(nk2h), 1, fr->handle)!=1)
return;
- }
fr->file_size+=sizeof(nk2h);
#ifdef DEBUG_NK2
log_info("nk2 item_count=%u\n", (unsigned int)le32(nk2h.items_count));