summaryrefslogtreecommitdiffstats
path: root/src/file_emf.c
diff options
context:
space:
mode:
authorChristophe Grenier <[email protected]>2023-12-27 10:55:25 +0100
committerChristophe Grenier <[email protected]>2023-12-27 10:55:25 +0100
commiteb2b554e33675ee4b85c207cd72693492f44676b (patch)
treed7edbff9f9d7b7a49706c99a8ab6328dc99faf58 /src/file_emf.c
parent25ef4ab508e85a3fbf62ca7a83cf5ccbfc6bafef (diff)
src/file_emf.c: more frama-c annotations
Diffstat (limited to 'src/file_emf.c')
-rw-r--r--src/file_emf.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/file_emf.c b/src/file_emf.c
index 79f8752a..5bae67d8 100644
--- a/src/file_emf.c
+++ b/src/file_emf.c
@@ -208,6 +208,7 @@ struct EMF_HDR
@ requires file_recovery->data_check==&data_check_emf;
@ requires buffer_size >= 2;
@ requires valid_data_check_param(buffer, buffer_size, file_recovery);
+ @ terminates \true;
@ ensures valid_data_check_result(\result, file_recovery);
@ assigns file_recovery->calculated_file_size;
@*/
@@ -217,6 +218,7 @@ static data_check_t data_check_emf(const unsigned char *buffer, const unsigned i
/*@ assert file_recovery->file_size <= PHOTOREC_MAX_FILE_SIZE; */
/*@
@ loop assigns file_recovery->calculated_file_size;
+ @ loop variant file_recovery->file_size + buffer_size/2 - (file_recovery->calculated_file_size + 8);
@*/
while(file_recovery->calculated_file_size + buffer_size/2 >= file_recovery->file_size &&
file_recovery->calculated_file_size + 8 < file_recovery->file_size + buffer_size/2)