libmsc/msc_ho.c: fix unreacheable check of MSC-T role allocation

Change-Id: I46fa37ff27e8a4576fdc8edad894ee16759a6e7a
Fixes: CID#198413
diff --git a/src/libmsc/msc_ho.c b/src/libmsc/msc_ho.c
index 3a4258c..615b8cd 100644
--- a/src/libmsc/msc_ho.c
+++ b/src/libmsc/msc_ho.c
@@ -463,9 +463,8 @@
 			       msc_i->ran_conn->ran_peer->fi->id, rp->fi->id);
 		}
 
-		msc_t_alloc(msc_a->c.msub, rp);
-		msc_ho_send_handover_request(msc_a);
-		return;
+		msc_t = msc_t_alloc(msc_a->c.msub, rp);
+		break;
 
 	case MSC_NEIGHBOR_TYPE_REMOTE_MSC:
 		ipa_name = msc_a->ho.new_cell.msc_ipa_name;
@@ -482,22 +481,24 @@
 			       osmo_quote_str(ipa_name, -1));
 		}
 
-		msc_t_remote_alloc(msc_a->c.msub, msc_a->c.ran, (const uint8_t*)ipa_name, strlen(ipa_name));
-		msc_ho_send_handover_request(msc_a);
-		return;
+		msc_t = msc_t_remote_alloc(msc_a->c.msub, msc_a->c.ran,
+					   (const uint8_t *) ipa_name,
+					   strlen(ipa_name));
+		break;
 
 	default:
 		msc_ho_try_next_cell(msc_a, "unknown Handover target type %d\n", msc_a->ho.new_cell.type);
 		return;
 	}
 
-	msc_t = msc_a_msc_t(msc_a);
 	if (!msc_t) {
 		/* There should definitely be one now. */
 		msc_ho_failed(msc_a, GSM0808_CAUSE_EQUIPMENT_FAILURE,
 			      "Cannot initiate Handover Request, failed to set up a target MSC-T\n");
 		return;
 	}
+
+	msc_ho_send_handover_request(msc_a);
 }
 
 static void msc_ho_rx_request_ack(struct msc_a *msc_a, struct msc_a_ran_dec_data *hra);