summaryrefslogtreecommitdiff
path: root/channels/chan_dahdi.c
diff options
context:
space:
mode:
Diffstat (limited to 'channels/chan_dahdi.c')
-rw-r--r--channels/chan_dahdi.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 813bcadb3..b0997be45 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -9010,8 +9010,11 @@ static struct ast_frame *dahdi_read(struct ast_channel *ast)
return &p->subs[idx].f;
}
- /* If we have a fake_event, fake an exception to handle it */
- if (p->fake_event) {
+ /*
+ * If we have a fake_event, fake an exception to handle it only
+ * if this channel owns the private.
+ */
+ if (p->fake_event && p->owner == ast) {
if (analog_lib_handles(p->sig, p->radio, p->oprmode)) {
struct analog_pvt *analog_p = p->sig_pvt;