]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix parked call performing a DTMF blind transfer after being retrieved.
authorRichard Mudgett <rmudgett@digium.com>
Wed, 6 Jun 2012 01:10:10 +0000 (01:10 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Wed, 6 Jun 2012 01:10:10 +0000 (01:10 +0000)
When a parked call was retrieved from the parking lot, it could not do a
blind transfer because it caused the involved calls to be hung up
unconditionally.

* Made the ParkedCall application return the ast_bridge_call() return
value.

(closes issue ABE-2862)
Reported by: Vlad Povorozniuc
........

Merged revisions 368567 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@368568 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/features.c

index f0e4b1a416097a039bd815da289190ae9d1e7061..2498484a07cbd325d57bcab21cc9f8ad2a82bd1e 100644 (file)
@@ -5070,7 +5070,7 @@ static int park_call_exec(struct ast_channel *chan, const char *data)
 /*! \brief Pickup parked call */
 static int parked_call_exec(struct ast_channel *chan, const char *data)
 {
-       int res = 0;
+       int res;
        struct ast_channel *peer = NULL;
        struct parkeduser *pu;
        struct ast_context *con;
@@ -5313,10 +5313,11 @@ static int parked_call_exec(struct ast_channel *chan, const char *data)
                }
                ast_verb(3, "Channel %s tried to retrieve nonexistent parked call %d\n",
                        chan->name, park);
+               res = -1;
        }
 
        parkinglot_unref(parkinglot);
-       return -1;
+       return res;
 }
 
 /*!