[asterisk-commits] tilghman: trunk r235822 - in /trunk: ./ main/features.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Dec 21 11:00:49 CST 2009
Author: tilghman
Date: Mon Dec 21 11:00:46 2009
New Revision: 235822
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=235822
Log:
Merged revisions 235821 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r235821 | tilghman | 2009-12-21 10:45:03 -0600 (Mon, 21 Dec 2009) | 8 lines
Send parking lot announcement to the channel which parked the call, not the park-ee.
(closes issue #16234)
Reported by: yeshuawatso
Patches:
20091210__issue16234.diff.txt uploaded by tilghman (license 14)
20091221__issue16234__1.4.diff.txt uploaded by tilghman (license 14)
Tested by: yeshuawatso
........
Modified:
trunk/ (props changed)
trunk/main/features.c
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Modified: trunk/main/features.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/features.c?view=diff&rev=235822&r1=235821&r2=235822
==============================================================================
--- trunk/main/features.c (original)
+++ trunk/main/features.c Mon Dec 21 11:00:46 2009
@@ -696,10 +696,10 @@
ast_log(LOG_DEBUG, "Found chanvar Parkinglot: %s\n", parkinglotname);
parkinglot = find_parkinglot(parkinglotname);
}
- if (!parkinglot)
- parkinglot = default_parkinglot;
-
- parkinglot_addref(parkinglot);
+ if (!parkinglot) {
+ parkinglot = parkinglot_addref(default_parkinglot);
+ }
+
if (option_debug)
ast_log(LOG_DEBUG, "Parkinglot: %s\n", parkinglot->name);
@@ -713,7 +713,7 @@
AST_LIST_LOCK(&parkinglot->parkings);
/* Check for channel variable PARKINGEXTEN */
ast_channel_lock(chan);
- parkingexten = pbx_builtin_getvar_helper(chan, "PARKINGEXTEN");
+ parkingexten = ast_strdupa(S_OR(pbx_builtin_getvar_helper(chan, "PARKINGEXTEN"), ""));
ast_channel_unlock(chan);
if (!ast_strlen_zero(parkingexten)) {
/*!\note The API forces us to specify a numeric parking slot, even
@@ -732,10 +732,10 @@
snprintf(pu->parkingexten, sizeof(pu->parkingexten), "%d", parking_space);
if (ast_exists_extension(NULL, parkinglot->parking_con, pu->parkingexten, 1, NULL)) {
+ ast_log(LOG_WARNING, "Requested parking extension already exists: %s@%s\n", parkingexten, parkinglot->parking_con);
AST_LIST_UNLOCK(&parkinglot->parkings);
parkinglot_unref(parkinglot);
ast_free(pu);
- ast_log(LOG_WARNING, "Requested parking extension already exists: %s@%s\n", parkingexten, parkinglot->parking_con);
return NULL;
}
} else {
@@ -784,7 +784,7 @@
pu->notquiteyet = 1;
pu->parkingnum = parking_space;
- pu->parkinglot = parkinglot;
+ pu->parkinglot = parkinglot_addref(parkinglot);
AST_LIST_INSERT_TAIL(&parkinglot->parkings, pu, list);
parkinglot_unref(parkinglot);
@@ -993,7 +993,7 @@
}
if (!play_announcement && args == &park_args) {
- args->orig_chan_name = ast_strdupa(chan->name);
+ args->orig_chan_name = ast_strdupa(peer->name);
}
park_status = park_call_full(chan, peer, args);
More information about the asterisk-commits
mailing list