summaryrefslogtreecommitdiff
path: root/channels/sig_pri.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2010-01-07 21:24:06 +0000
committerRichard Mudgett <rmudgett@digium.com>2010-01-07 21:24:06 +0000
commitfcf4f438f18ae7457d61cda6a7b8f64d71cee616 (patch)
tree16dc3f1dca85661ea511520cbf11f3028d625c86 /channels/sig_pri.c
parenta575a50cd56a5608fcfab07b14e53fbb608de554 (diff)
Fix using the wrong pointer type in do_idle_thread().
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@238527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/sig_pri.c')
-rw-r--r--channels/sig_pri.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/channels/sig_pri.c b/channels/sig_pri.c
index 284b81020..e542ad144 100644
--- a/channels/sig_pri.c
+++ b/channels/sig_pri.c
@@ -1191,14 +1191,15 @@ static int pri_find_pri_call(struct sig_pri_pri *pri, q931_call *call)
}
#endif /* defined(HAVE_PRI_CALL_HOLD) */
-static void *do_idle_thread(void *vchan)
+static void *do_idle_thread(void *v_pvt)
{
- struct ast_channel *chan = vchan;
- struct sig_pri_chan *pvt = chan->tech_pvt;
+ struct sig_pri_chan *pvt = v_pvt;
+ struct ast_channel *chan = pvt->owner;
struct ast_frame *f;
char ex[80];
/* Wait up to 30 seconds for an answer */
int newms, ms = 30000;
+
ast_verb(3, "Initiating idle call on channel %s\n", chan->name);
snprintf(ex, sizeof(ex), "%d/%s", pvt->channel, pvt->pri->idledial);
if (ast_call(chan, ex, 0)) {
@@ -1966,7 +1967,7 @@ static void *pri_dchannel(void *vpri)
idle = sig_pri_request(pri->pvts[nextidle], AST_FORMAT_ULAW, NULL, 0);
if (idle) {
pri->pvts[nextidle]->isidlecall = 1;
- if (ast_pthread_create_background(&p, NULL, do_idle_thread, idle)) {
+ if (ast_pthread_create_background(&p, NULL, do_idle_thread, pri->pvts[nextidle])) {
ast_log(LOG_WARNING, "Unable to start new thread for idle channel '%s'\n", idle->name);
ast_hangup(idle);
}