libmsc/ran_msg_a.c: avoid ternary operator in struct initialization

For some reason, having ternary operator there makes Coverity think
that 'n->geran.chosen_encryption' is dereferenced before checking
against NULL. Let's make it happy, and move the assignment.

Change-Id: I95051d0f02e2fdd3ec8da3a506109e7b23e99b4b
Fixes: CID#198454 Dereference before null check
diff --git a/src/libmsc/ran_msg_a.c b/src/libmsc/ran_msg_a.c
index ba0990d..da32a84 100644
--- a/src/libmsc/ran_msg_a.c
+++ b/src/libmsc/ran_msg_a.c
@@ -1068,9 +1068,6 @@
 
 		.speech_version_used = n->speech_version_used,
 
-		.chosen_encryption_algorithm_serving =
-			n->geran.chosen_encryption ? n->geran.chosen_encryption->alg_id : 0,
-
 		.old_bss_to_new_bss_info_raw = n->old_bss_to_new_bss_info_raw,
 		.old_bss_to_new_bss_info_raw_len = n->old_bss_to_new_bss_info_raw_len,
 
@@ -1098,6 +1095,7 @@
 		memcpy(r.encryption_information.key,
 		       n->geran.chosen_encryption->key, n->geran.chosen_encryption->key_len);
 		r.encryption_information.key_len = n->geran.chosen_encryption->key_len;
+		r.chosen_encryption_algorithm_serving = n->geran.chosen_encryption->alg_id;
 	}
 
 	if (n->classmark)