Bug #86: Deletion of unnecessary checks before a few calls of asn1c functions

The following functions return immediately if a null pointer was passed.
* asn1p_constraint_free
* asn1p_paramlist_free
* asn1p_ref_free
* asn1p_value_free
* asn1p_wsyntx_free

It is therefore not needed that a function caller repeats a corresponding check.

This issue was fixed by using the software "Coccinelle 1.0.4".

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
diff --git a/libasn1parser/asn1p_constr.c b/libasn1parser/asn1p_constr.c
index 0b1e892..008ad40 100644
--- a/libasn1parser/asn1p_constr.c
+++ b/libasn1parser/asn1p_constr.c
@@ -23,14 +23,10 @@
 asn1p_constraint_free(asn1p_constraint_t *ct) {
 	if(ct) {
 
-		if(ct->containedSubtype)
-			asn1p_value_free(ct->containedSubtype);
-		if(ct->value)
-			asn1p_value_free(ct->value);
-		if(ct->range_start)
-			asn1p_value_free(ct->range_start);
-		if(ct->range_stop)
-			asn1p_value_free(ct->range_stop);
+		asn1p_value_free(ct->containedSubtype);
+		asn1p_value_free(ct->value);
+		asn1p_value_free(ct->range_start);
+		asn1p_value_free(ct->range_stop);
 
 		if(ct->elements) {
 			while(ct->el_count--) {
diff --git a/libasn1parser/asn1p_expr.c b/libasn1parser/asn1p_expr.c
index b7a03ec..46e54a3 100644
--- a/libasn1parser/asn1p_expr.c
+++ b/libasn1parser/asn1p_expr.c
@@ -246,20 +246,13 @@
 		}
 
 		free(expr->Identifier);
-		if(expr->reference)
-			asn1p_ref_free(expr->reference);
-		if(expr->constraints)
-			asn1p_constraint_free(expr->constraints);
-		if(expr->combined_constraints)
-			asn1p_constraint_free(expr->combined_constraints);
-		if(expr->lhs_params)
-			asn1p_paramlist_free(expr->lhs_params);
-		if(expr->value)
-			asn1p_value_free(expr->value);
-		if(expr->marker.default_value)
-			asn1p_value_free(expr->marker.default_value);
-		if(expr->with_syntax)
-			asn1p_wsyntx_free(expr->with_syntax);
+		asn1p_ref_free(expr->reference);
+		asn1p_constraint_free(expr->constraints);
+		asn1p_constraint_free(expr->combined_constraints);
+		asn1p_paramlist_free(expr->lhs_params);
+		asn1p_value_free(expr->value);
+		asn1p_value_free(expr->marker.default_value);
+		asn1p_wsyntx_free(expr->with_syntax);
 
 		if(expr->data && expr->data_free)
 			expr->data_free(expr->data);
diff --git a/libasn1parser/asn1p_param.c b/libasn1parser/asn1p_param.c
index 6fd7f21..df6054e 100644
--- a/libasn1parser/asn1p_param.c
+++ b/libasn1parser/asn1p_param.c
@@ -27,8 +27,7 @@
 		if(pl->params) {
 			int i = pl->params_count;
 			while(i--) {
-				if(pl->params[i].governor)
-					asn1p_ref_free(pl->params[i].governor);
+				asn1p_ref_free(pl->params[i].governor);
 				free(pl->params[i].argument);
 				pl->params[i].governor = 0;
 				pl->params[i].argument = 0;
@@ -82,8 +81,7 @@
 		pl->params_count++;
 		return 0;
 	} else {
-		if(pl->params[pl->params_count].governor)
-			asn1p_ref_free(pl->params[pl->params_count].governor);
+		asn1p_ref_free(pl->params[pl->params_count].governor);
 		return -1;
 	}
 }