44d305
diff -urNp a/src/libjasper/jp2/jp2_dec.c b/src/libjasper/jp2/jp2_dec.c
44d305
--- a/src/libjasper/jp2/jp2_dec.c	2021-06-01 13:50:54.213552191 +0200
44d305
+++ b/src/libjasper/jp2/jp2_dec.c	2021-06-01 14:02:40.016274587 +0200
44d305
@@ -396,6 +396,14 @@ jas_image_t *jp2_decode(jas_stream_t *in
44d305
 		}
44d305
 	}
44d305
 
44d305
+    /* Ensure that the number of channels being used by the decoder
44d305
+	  matches the number of image components. */
44d305
+	if (dec->numchans != jas_image_numcmpts(dec->image)) {
44d305
+		jas_eprintf("error: mismatch in number of components (%d != %d)\n",
44d305
+		  dec->numchans, jas_image_numcmpts(dec->image));
44d305
+		goto error;
44d305
+	}
44d305
+
44d305
 	/* Mark all components as being of unknown type. */
44d305
 
44d305
 	for (i = 0; i < JAS_CAST(jas_uint, jas_image_numcmpts(dec->image)); ++i) {