Skip to content

Commit b3fce78

Browse files
committed
tst pattern blank: allow user-specified val
1 parent 9d943d8 commit b3fce78

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/utils/image_delegate.c

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -325,9 +325,9 @@ tst_usage()
325325
"\t- c_<CS> - color space\n"
326326
"\t- p_<PF> - pixel format\n"
327327
"\tpatterns:\n"
328-
"\t- blank - use blank pattern\n"
329-
"\t- gradient - use gradient pattern (default)\n"
330-
"\t- noise - use white noise\n"
328+
"\t- blank[_<val>] - use blank pattern (or fill with given <val>)\n"
329+
"\t- gradient - use gradient pattern (default)\n"
330+
"\t- noise - use white noise\n"
331331
"\t- random[_<seed>] - same as noise, but use deterministic pattern (seed is int)\n"
332332
);
333333
PRINTF("\nExamples:\n"
@@ -350,6 +350,8 @@ enum tst_pattern {
350350
struct tst_image_parameters
351351
{
352352
enum tst_pattern pattern;
353+
354+
long blank_val;
353355
int random_seed;
354356
};
355357

@@ -409,8 +411,11 @@ tst_image_parse_filename(const char* filename, struct gpujpeg_image_parameters*
409411
tst_params->random_seed = atoi(strchr(item, '_') + 1);
410412
}
411413
}
412-
else if ( strcmp(item, "blank") == 0) {
414+
else if ( strstr(item, "blank") == item ) {
413415
tst_params->pattern = TST_BLANK;
416+
if ( strchr(item, '_') != NULL ) {
417+
tst_params->blank_val = strtol(strchr(item, '_') + 1, NULL, 0);
418+
}
414419
}
415420
else if ( strcmp(item, "gradient") == 0) {
416421
tst_params->pattern = TST_GRADIENT;
@@ -578,7 +583,8 @@ tst_image_load_delegate(const char* filename, size_t* image_size, void** image_d
578583
break;
579584
}
580585
case TST_BLANK: {
581-
memset(*image_data, 0, *image_size);
586+
assert(tst_params.blank_val >= 0 && tst_params.blank_val <= 255);
587+
memset(*image_data, (int)tst_params.blank_val, *image_size);
582588
break;
583589
}
584590
}

0 commit comments

Comments
 (0)