summaryrefslogtreecommitdiffstats
path: root/main/jasper/libjasper-stepsizes-overflow.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/jasper/libjasper-stepsizes-overflow.patch')
-rw-r--r--main/jasper/libjasper-stepsizes-overflow.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/main/jasper/libjasper-stepsizes-overflow.patch b/main/jasper/libjasper-stepsizes-overflow.patch
new file mode 100644
index 000000000..097559f68
--- /dev/null
+++ b/main/jasper/libjasper-stepsizes-overflow.patch
@@ -0,0 +1,14 @@
+--- jasper-1.900.1.orig/src/libjasper/jpc/jpc_cs.c 2007-01-19 22:43:07.000000000 +0100
++++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2007-04-06 01:29:02.000000000 +0200
+@@ -982,7 +982,10 @@ static int jpc_qcx_getcompparms(jpc_qcxc
+ compparms->numstepsizes = (len - n) / 2;
+ break;
+ }
+- if (compparms->numstepsizes > 0) {
++ if (compparms->numstepsizes > 3 * JPC_MAXRLVLS + 1) {
++ jpc_qcx_destroycompparms(compparms);
++ return -1;
++ } else if (compparms->numstepsizes > 0) {
+ compparms->stepsizes = jas_malloc(compparms->numstepsizes *
+ sizeof(uint_fast16_t));
+ assert(compparms->stepsizes);