summaryrefslogtreecommitdiff
path: root/src/bin
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2017-08-14 17:26:58 +0200
committerEven Rouault <even.rouault@spatialys.com>2017-08-14 17:26:58 +0200
commitbaf0c1ad4572daa89caa3b12985bdd93530f0dd7 (patch)
treeca1405ff4a19577894cfb234cc574c7ca1000368 /src/bin
parentafb308b9ccbe129608c9205cf3bb39bbefad90b9 (diff)
bmp_read_info_header(): reject bmp files with biBitCount == 0 (#983)
Diffstat (limited to 'src/bin')
-rw-r--r--src/bin/jp2/convertbmp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/bin/jp2/convertbmp.c b/src/bin/jp2/convertbmp.c
index b49e7a08..2715fdf2 100644
--- a/src/bin/jp2/convertbmp.c
+++ b/src/bin/jp2/convertbmp.c
@@ -392,6 +392,10 @@ static OPJ_BOOL bmp_read_info_header(FILE* IN, OPJ_BITMAPINFOHEADER* header)
header->biBitCount = (OPJ_UINT16)getc(IN);
header->biBitCount |= (OPJ_UINT16)((OPJ_UINT32)getc(IN) << 8);
+ if (header->biBitCount == 0) {
+ fprintf(stderr, "Error, invalid biBitCount %d\n", 0);
+ return OPJ_FALSE;
+ }
if (header->biSize >= 40U) {
header->biCompression = (OPJ_UINT32)getc(IN);