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

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