summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch')
-rw-r--r--var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch b/var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch
new file mode 100644
index 0000000000..cbf79ff971
--- /dev/null
+++ b/var/spack/repos/builtin/packages/jasper/fix_alpha_channel_assert_fail.patch
@@ -0,0 +1,25 @@
+diff --git a/src/libjasper/jpc/jpc_dec.c b/src/libjasper/jpc/jpc_dec.c
+index fa72a0e..1f4845f 100644
+--- a/src/libjasper/jpc/jpc_dec.c
++++ b/src/libjasper/jpc/jpc_dec.c
+@@ -1069,12 +1069,18 @@ static int jpc_dec_tiledecode(jpc_dec_t *dec, jpc_dec_tile_t *tile)
+ /* Apply an inverse intercomponent transform if necessary. */
+ switch (tile->cp->mctid) {
+ case JPC_MCT_RCT:
+- assert(dec->numcomps == 3);
++ if (dec->numcomps != 3 && dec->numcomps != 4) {
++ jas_eprintf("bad number of components (%d)\n", dec->numcomps);
++ return -1;
++ }
+ jpc_irct(tile->tcomps[0].data, tile->tcomps[1].data,
+ tile->tcomps[2].data);
+ break;
+ case JPC_MCT_ICT:
+- assert(dec->numcomps == 3);
++ if (dec->numcomps != 3 && dec->numcomps != 4) {
++ jas_eprintf("bad number of components (%d)\n", dec->numcomps);
++ return -1;
++ }
+ jpc_iict(tile->tcomps[0].data, tile->tcomps[1].data,
+ tile->tcomps[2].data);
+ break;