diff options
Diffstat (limited to 'wctdm.c')
-rwxr-xr-x | wctdm.c | 8 |
1 files changed, 3 insertions, 5 deletions
@@ -1788,17 +1788,15 @@ static int wctdm_watchdog(struct zt_span *span, int event) static int wctdm_close(struct zt_chan *chan) { struct wctdm *wc = chan->pvt; - int x; wc->usecount--; #ifndef LINUX26 MOD_DEC_USE_COUNT; #else module_put(THIS_MODULE); #endif - for (x=0;x<wc->cards;x++) { - if (wc->modtype[x] == MOD_TYPE_FXS) - wc->mod.fxs.idletxhookstate[x] = 1; - } + if (wc->modtype[chan->chanpos - 1]) + wc->mod.fxs.idletxhookstate[chan->chanpos - 1] = 1; + /* If we're dead, release us now */ if (!wc->usecount && wc->dead) wctdm_release(wc); |