diff --git a/common-channel.c b/common-channel.c
index 100389693ad109d780a9fe84f5bf2024cb61572f..967c937c618ba178ac58ecd295a4c100b3a33b5a 100644
--- a/common-channel.c
+++ b/common-channel.c
@@ -1089,6 +1089,7 @@ void recv_msg_channel_open_confirmation() {
 		if (ret > 0) {
 			remove_channel(channel);
 			TRACE(("inithandler returned failure %d", ret))
+			return;
 		}
 	}