there can be no identifier

diff --git a/libasn1fix/asn1fix_param.c b/libasn1fix/asn1fix_param.c
index 159dbbc..a4d9690 100644
--- a/libasn1fix/asn1fix_param.c
+++ b/libasn1fix/asn1fix_param.c
@@ -134,13 +134,15 @@
 	 * Cleanup the new expression so there is no ptype-related
 	 * stuff hanging around.
 	 */
-	p = strdup(expr->Identifier);
-	if(p) {
-		free(nex->Identifier);
-		nex->Identifier = p;
-	} else {
-		asn1p_expr_free(nex);
-		return -1;
+	if(expr->Identifier) {
+		p = strdup(expr->Identifier);
+		if(p) {
+			free(nex->Identifier);
+			nex->Identifier = p;
+		} else {
+			asn1p_expr_free(nex);
+			return -1;
+		}
 	}
 	asn1p_paramlist_free(nex->params);
 	nex->params = NULL;