diff --git a/addons/chan_ooh323.c b/addons/chan_ooh323.c
index 08f0919ca031179d6e232302010b19ed030a0cb8..1d78071b182d3a085bf5d3409a4540f2d23e1ddf 100644
--- a/addons/chan_ooh323.c
+++ b/addons/chan_ooh323.c
@@ -1259,10 +1259,14 @@ static int ooh323_indicate(struct ast_channel *ast, int condition, const void *d
 		}
 	 break;
 	case AST_CONTROL_SRCUPDATE:
-		ast_rtp_instance_update_source(p->rtp);
+		if (p->rtp) {
+			ast_rtp_instance_update_source(p->rtp);
+		}
 		break;
 	case AST_CONTROL_SRCCHANGE:
-		ast_rtp_instance_change_source(p->rtp);
+		if (p->rtp) {
+			ast_rtp_instance_change_source(p->rtp);
+		}
 		break;
 	case AST_CONTROL_CONNECTED_LINE:
 		if (!ast->connected.id.name.valid