diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2019-06-02 16:33:28 +0200 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2019-06-02 16:33:28 +0200 |
commit | 236cd97b617972c38ac8e6780590b3049c0afa2f (patch) | |
tree | 6875f3ac942d186d1937a13c0155fab2d721de44 | |
parent | cf2f13b2288a5a2b016a801f213c239f48e2b83b (diff) | |
download | libgphoto2-236cd97b617972c38ac8e6780590b3049c0afa2f.tar.gz |
do not overflow the maximum entries in the global array (AFL)
-rw-r--r-- | camlibs/jamcam/library.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/camlibs/jamcam/library.c b/camlibs/jamcam/library.c index f0bdef31a..258121ada 100644 --- a/camlibs/jamcam/library.c +++ b/camlibs/jamcam/library.c @@ -140,6 +140,8 @@ static int jamcam_mmc_card_file_count (Camera *camera) { jamcam_files[jamcam_count].height = height; jamcam_files[jamcam_count].data_incr = data_incr; + if (jamcam_count+1 >= sizeof(jamcam_files)/sizeof(jamcam_files[0])) + break; jamcam_count++; position += data_incr; @@ -185,6 +187,8 @@ static int jamcam_mmc_card_file_count (Camera *camera) { jamcam_files[jamcam_count].width = width; jamcam_files[jamcam_count].height = height; jamcam_files[jamcam_count].data_incr = data_incr; + if (jamcam_count+1 >= sizeof(jamcam_files)/sizeof(jamcam_files[0])) + break; jamcam_count++; position += data_incr; @@ -255,6 +259,8 @@ int jamcam_file_count (Camera *camera) { jamcam_files[jamcam_count].width = width; jamcam_files[jamcam_count].height = height; jamcam_files[jamcam_count].data_incr = data_incr; + if (jamcam_count+1 >= sizeof(jamcam_files)/sizeof(jamcam_files[0])) + break; jamcam_count++; @@ -291,6 +297,8 @@ int jamcam_file_count (Camera *camera) { jamcam_files[jamcam_count].width = width; jamcam_files[jamcam_count].height = height; jamcam_files[jamcam_count].data_incr = data_incr; + if (jamcam_count+1 >= sizeof(jamcam_files)/sizeof(jamcam_files[0])) + break; jamcam_count++; position += data_incr; |