From 61c782df58ae08a0378fd7071ba0f0d6399651fa Mon Sep 17 00:00:00 2001 From: Paul Belanger Date: Tue, 27 Jul 2010 03:02:33 +0000 Subject: [PATCH] Merged revisions 279755 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r279755 | pabelanger | 2010-07-26 22:57:33 -0400 (Mon, 26 Jul 2010) | 10 lines If dringXcontext is null, fallback to default context value. (closes issue #17693) Reported by: iasgoscouk Patches: issue17693.patch uploaded by pabelanger (license 224) Tested by: iasgoscouk Review: https://reviewboard.asterisk.org/r/803/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@279756 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_dahdi.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 372af0fb9c..4c5f081ca9 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -1825,8 +1825,8 @@ static int my_distinctive_ring(struct ast_channel *chan, void *pvt, int idx, int if (distMatches == 3) { /* The ring matches, set the context to whatever is for distinctive ring.. */ - ast_copy_string(p->context, p->drings.ringContext[counter].contextData, sizeof(p->context)); - ast_copy_string(chan->context, p->drings.ringContext[counter].contextData, sizeof(chan->context)); + ast_copy_string(p->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(p->context)); + ast_copy_string(chan->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(chan->context)); ast_verb(3, "Distinctive Ring matched context %s\n",p->context); break; } @@ -10209,8 +10209,8 @@ static void *analog_ss_thread(void *data) if (distMatches == 3) { /* The ring matches, set the context to whatever is for distinctive ring.. */ - ast_copy_string(p->context, p->drings.ringContext[counter].contextData, sizeof(p->context)); - ast_copy_string(chan->context, p->drings.ringContext[counter].contextData, sizeof(chan->context)); + ast_copy_string(p->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(p->context)); + ast_copy_string(chan->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(chan->context)); ast_verb(3, "Distinctive Ring matched context %s\n",p->context); break; } @@ -10447,8 +10447,8 @@ static void *analog_ss_thread(void *data) } if (distMatches == 3) { /* The ring matches, set the context to whatever is for distinctive ring.. */ - ast_copy_string(p->context, p->drings.ringContext[counter].contextData, sizeof(p->context)); - ast_copy_string(chan->context, p->drings.ringContext[counter].contextData, sizeof(chan->context)); + ast_copy_string(p->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(p->context)); + ast_copy_string(chan->context, S_OR(p->drings.ringContext[counter].contextData, p->defcontext), sizeof(chan->context)); ast_verb(3, "Distinctive Ring matched context %s\n",p->context); break; }