From 9432a1c19f08309b296a0c93888e2a505ee985d3 Mon Sep 17 00:00:00 2001
From: Jeremy McNamara <jj@nufone.net>
Date: Wed, 26 May 2004 19:14:51 +0000
Subject: [PATCH] properly clean capabilites from the endpoint

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3079 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/h323/ast_h323.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/channels/h323/ast_h323.cpp b/channels/h323/ast_h323.cpp
index ba7de93f75..cb78730af7 100755
--- a/channels/h323/ast_h323.cpp
+++ b/channels/h323/ast_h323.cpp
@@ -853,6 +853,7 @@ void h323_callback_register(setup_incoming_cb  	ifunc,
 int h323_set_capability(int cap, int dtmfMode)
 {
 	H323Capabilities oldcaps;
+	PStringArray codecs;
 	int g711Frames = 30;
 	int gsmFrames  = 4;
 
@@ -863,7 +864,10 @@ int h323_set_capability(int cap, int dtmfMode)
 
 	/* clean up old capabilities list before changing */
 	oldcaps = endPoint->GetCapabilities();
-	oldcaps.RemoveAll();
+	for (PINDEX i=0; i< oldcaps.GetSize(); i++) {
+                 codecs.AppendString(oldcaps[i].GetFormatName());
+         }
+         endPoint->RemoveCapabilities(codecs);
 
 	mode = dtmfMode;
 	if (dtmfMode == H323_DTMF_INBAND) {
-- 
GitLab