Fix parked call performing a DTMF blind transfer after being retrieved.

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@368567 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Richard Mudgett
2012-06-06 01:08:29 +00:00
parent ca256c003b
commit eae448bc55

View File

@@ -5055,7 +5055,7 @@ static int park_call_exec(struct ast_channel *chan, const char *data)
/*! \brief Pickup parked call */ /*! \brief Pickup parked call */
static int parked_call_exec(struct ast_channel *chan, const char *data) static int parked_call_exec(struct ast_channel *chan, const char *data)
{ {
int res = 0; int res;
struct ast_channel *peer = NULL; struct ast_channel *peer = NULL;
struct parkeduser *pu; struct parkeduser *pu;
struct ast_context *con; struct ast_context *con;
@@ -5298,10 +5298,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", ast_verb(3, "Channel %s tried to retrieve nonexistent parked call %d\n",
chan->name, park); chan->name, park);
res = -1;
} }
parkinglot_unref(parkinglot); parkinglot_unref(parkinglot);
return -1; return res;
} }
/*! /*!