Index: b/main/channel.c
===================================================================
--- a/main/channel.c
+++ b/main/channel.c
@@ -7465,6 +7465,16 @@ int ast_setstate(struct ast_channel *cha
 /*! \brief Bridge two channels together (early) */
 int ast_channel_early_bridge(struct ast_channel *c0, struct ast_channel *c1)
 {
+	/* There is no channel type doing something real when c1 is NULL
+	 * To avoid race ending by NULL pointer call when real channel
+	 * is changed to surrogate between test and call
+	 * we leave the function now if c1 is NULL
+	 */
+
+	if (c1 == NULL)
+		return -1;
+
+
 	/* Make sure we can early bridge, if not error out */
 	if (!ast_channel_tech(c0)->early_bridge || (c1 && (!ast_channel_tech(c1)->early_bridge || ast_channel_tech(c0)->early_bridge != ast_channel_tech(c1)->early_bridge)))
 		return -1;
