Blame SOURCES/jasper-1.900.1-Coverity-FORWARD_NULL.patch

ca8428
Error: FORWARD_NULL
ca8428
jpc/jpc_dec.c:2207: var_compare_op: Comparing "streams" to null implies that "streams" might be null.
ca8428
jpc/jpc_dec.c:2270: var_deref_model: Passing null variable "streams" to function "jpc_streamlist_destroy", which dereferences it.
ca8428
jpc/jpc_dec.c:2108: deref_parm: Directly dereferencing parameter "streamlist".
ca8428
ca8428
jpc/jpc_t1enc.c:225: assign_zero: Assigning: "cblk->passes" = 0.
ca8428
jpc/jpc_t1enc.c:228: alias_transfer: Assigning null: "pass" = "cblk->passes".
ca8428
jpc/jpc_t1enc.c:229: var_deref_op: Dereferencing null variable "pass".
ca8428
ca8428
diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.forward_null jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
ca8428
--- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.forward_null	2007-01-19 22:43:07.000000000 +0100
ca8428
+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c	2011-06-24 15:01:39.200600146 +0200
ca8428
@@ -2267,7 +2267,9 @@ jpc_streamlist_t *jpc_ppmstabtostreams(j
ca8428
 	return streams;
ca8428
 
ca8428
 error:
ca8428
-	jpc_streamlist_destroy(streams);
ca8428
+	if (streams) {
ca8428
+		jpc_streamlist_destroy(streams);
ca8428
+	}
ca8428
 	return 0;
ca8428
 }
ca8428
 
ca8428
diff -up jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c.forward_null jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c
ca8428
--- jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c.forward_null	2007-01-19 22:43:07.000000000 +0100
ca8428
+++ jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c	2011-06-24 14:58:33.061248133 +0200
ca8428
@@ -224,7 +224,7 @@ int jpc_enc_enccblk(jpc_enc_t *enc, jas_
ca8428
 	} else {
ca8428
 		cblk->passes = 0;
ca8428
 	}
ca8428
-	endpasses = &cblk->passes[cblk->numpasses];
ca8428
+	endpasses = (cblk->passes) ? &cblk->passes[cblk->numpasses] : 0;
ca8428
 	for (pass = cblk->passes; pass != endpasses; ++pass) {
ca8428
 		pass->start = 0;
ca8428
 		pass->end = 0;
ca8428
@@ -352,7 +352,7 @@ dump_passes(cblk->passes, cblk->numpasse
ca8428
 #endif
ca8428
 
ca8428
 	n = 0;
ca8428
-	endpasses = &cblk->passes[cblk->numpasses];
ca8428
+	endpasses = (cblk->passes) ? &cblk->passes[cblk->numpasses] : 0;
ca8428
 	for (pass = cblk->passes; pass != endpasses; ++pass) {
ca8428
 		if (pass->start < n) {
ca8428
 			pass->start = n;