Don't destory rtp until destroy, use rtp_stop instead

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@668 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer
2003-03-20 22:01:53 +00:00
parent f02b64d258
commit 83016e1bce
3 changed files with 11 additions and 6 deletions

View File

@@ -3117,7 +3117,6 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_
{
char *to;
char *msg, *c;
struct ast_rtp *rtp;
struct ast_channel *owner;
struct sip_peer *peer;
int pingtime;
@@ -3267,9 +3266,8 @@ retrylock:
ast_verbose(VERBOSE_PREFIX_3 "Got SIP response %d \"%s\" back from %s\n", resp, rest, inet_ntoa(p->sa.sin_addr));
p->alreadygone = 1;
if (p->rtp) {
struct sockaddr_in sin = { AF_INET, };
/* Immediately stop RTP by setting transmit to 0 */
ast_rtp_setpeer(p->rtp, &sin);
/* Immediately stop RTP */
ast_rtp_stop(p->rtp);
}
/* XXX Locking issues?? XXX */
switch(resp) {
@@ -3608,8 +3606,7 @@ static int handle_request(struct sip_pvt *p, struct sip_request *req, struct soc
p->alreadygone = 1;
if (p->rtp) {
/* Immediately stop RTP */
ast_rtp_destroy(p->rtp);
p->rtp = NULL;
ast_rtp_stop(p->rtp);
}
if (p->owner)
ast_queue_hangup(p->owner, 1);