[Asterisk-cvs] asterisk/channels chan_sip.c,1.335,1.336 chan_zap.c,1.208,1.209
markster at lists.digium.com
markster at lists.digium.com
Mon Apr 19 18:51:28 CDT 2004
Update of /usr/cvsroot/asterisk/channels
In directory mongoose.digium.com:/tmp/cvs-serv7060/channels
Modified Files:
chan_sip.c chan_zap.c
Log Message:
Fix trailing slash problem (Zap) and making sure refers get ignored the second tiem around.
Index: chan_sip.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channels/chan_sip.c,v
retrieving revision 1.335
retrieving revision 1.336
diff -u -d -r1.335 -r1.336
--- chan_sip.c 15 Apr 2004 00:02:07 -0000 1.335
+++ chan_sip.c 19 Apr 2004 22:55:35 -0000 1.336
@@ -5528,29 +5528,31 @@
transmit_response_with_allow(p, "484 Address Incomplete", req);
else {
transmit_response(p, "202 Accepted", req);
- if (p->refer_call) {
- ast_log(LOG_DEBUG,"202 Accepted (supervised)\n");
- attempt_transfer(p, p->refer_call);
- ast_mutex_unlock(&p->refer_call->lock);
- p->refer_call = NULL;
- p->gotrefer = 1;
- } else {
- ast_log(LOG_DEBUG,"202 Accepted (blind)\n");
- c = p->owner;
- if (c) {
- transfer_to = c->bridge;
- if (transfer_to) {
- ast_moh_stop(transfer_to);
- ast_async_goto(transfer_to,p->context, p->refer_to,1);
- } else {
- ast_queue_hangup(p->owner);
+ if (!ignore) {
+ if (p->refer_call) {
+ ast_log(LOG_DEBUG,"202 Accepted (supervised)\n");
+ attempt_transfer(p, p->refer_call);
+ ast_mutex_unlock(&p->refer_call->lock);
+ p->refer_call = NULL;
+ p->gotrefer = 1;
+ } else {
+ ast_log(LOG_DEBUG,"202 Accepted (blind)\n");
+ c = p->owner;
+ if (c) {
+ transfer_to = c->bridge;
+ if (transfer_to) {
+ ast_moh_stop(transfer_to);
+ ast_async_goto(transfer_to,p->context, p->refer_to,1);
+ } else {
+ ast_queue_hangup(p->owner);
+ }
}
+ p->gotrefer = 1;
}
- p->gotrefer = 1;
+ /* Always increment on a BYE */
+ transmit_request_with_auth(p, "BYE", 0, 1, 1);
+ p->alreadygone = 1;
}
- /* Always increment on a BYE */
- transmit_request_with_auth(p, "BYE", 0, 1, 1);
- p->alreadygone = 1;
}
} else if (!strcasecmp(cmd, "CANCEL")) {
check_via(p, req);
Index: chan_zap.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channels/chan_zap.c,v
retrieving revision 1.208
retrieving revision 1.209
diff -u -d -r1.208 -r1.209
--- chan_zap.c 17 Apr 2004 23:48:19 -0000 1.208
+++ chan_zap.c 19 Apr 2004 22:55:35 -0000 1.209
@@ -1509,7 +1509,7 @@
if (c)
c++;
else
- c = dest;
+ c = "";
if (strlen(c) < p->stripmsd) {
ast_log(LOG_WARNING, "Number '%s' is shorter than stripmsd (%d)\n", c, p->stripmsd);
return -1;
More information about the svn-commits
mailing list