mindtct: Check for multiplication overflow in gen_quality_map()

Assert if any of the multiplications, which are then used to allocate
memory, would overflow.

Closes: #103
This commit is contained in:
Bastien Nocera 2018-12-13 15:19:26 +01:00
parent 8a3a974ea3
commit 239034714f

View file

@ -115,6 +115,9 @@ int gen_quality_map(int **oqmap, int *direction_map, int *low_contrast_map,
int arrayPos, arrayPos2; int arrayPos, arrayPos2;
int QualOffset; int QualOffset;
ASSERT_SIZE_MUL(map_w, map_h);
ASSERT_SIZE_MUL(map_w * map_h, sizeof(int));
QualMap = (int *)malloc(map_w * map_h * sizeof(int)); QualMap = (int *)malloc(map_w * map_h * sizeof(int));
if(QualMap == (int *)NULL){ if(QualMap == (int *)NULL){
fprintf(stderr, "ERROR : gen_quality_map : malloc : QualMap\n"); fprintf(stderr, "ERROR : gen_quality_map : malloc : QualMap\n");