From: Jean Galarneau Date: Mon, 19 Jul 2010 21:21:20 +0000 (+0000) Subject: Merged revisions 277945 via svnmerge from X-Git-Tag: 1.6.2.11-rc1~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7a6c1106c9abd6286991c77eb71b8aeac8bd86ad;p=thirdparty%2Fasterisk.git Merged revisions 277945 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r277945 | jeang | 2010-07-19 16:07:08 -0500 (Mon, 19 Jul 2010) | 15 lines Merged revisions 277906 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r277906 | jeang | 2010-07-19 15:16:36 -0500 (Mon, 19 Jul 2010) | 7 lines Avoid trying to pickup a parked extension before the park operation is completed. A crash could occur if the extension is picked up while the parking extension is being announced. Testing pu->notquiteyet while searching for a parked extension resolves this crash. (ABE-2418) ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@277966 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/features.c b/main/features.c index 260f7f5c95..0668ae657f 100644 --- a/main/features.c +++ b/main/features.c @@ -3403,7 +3403,7 @@ static int park_exec_full(struct ast_channel *chan, void *data, struct ast_parki AST_LIST_LOCK(&parkinglot->parkings); AST_LIST_TRAVERSE_SAFE_BEGIN(&parkinglot->parkings, pu, list) { - if (!data || pu->parkingnum == park) { + if (!pu->notquiteyet && (!data || pu->parkingnum == park)) { if (pu->chan->pbx) { /* do not allow call to be picked up until the PBX thread is finished */ AST_LIST_UNLOCK(&parkinglot->parkings); return -1;