]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
freetdm: Fix release guard timer check
authorMoises Silva <moy@sangoma.com>
Sun, 9 Nov 2014 08:41:59 +0000 (00:41 -0800)
committerMoises Silva <moy@sangoma.com>
Sun, 9 Nov 2014 08:41:59 +0000 (00:41 -0800)
libs/freetdm/src/ftdm_io.c

index 099035409f669fe3ea2384b298fe0e7f0148ca6c..cbc04eb89499b34eae71cef29877ff0dcdc07764 100644 (file)
@@ -1492,12 +1492,13 @@ static __inline__ int chan_is_avail(ftdm_channel_t *check)
        }
        /* release guard time check */
        if (check->span->sig_release_guard_time_ms && check->last_release_time) {
-               ftdm_time_t time_diff = (check->last_release_time - ftdm_current_time_in_ms());
+               ftdm_time_t time_diff = (ftdm_current_time_in_ms() - check->last_release_time);
                if (time_diff < check->span->sig_release_guard_time_ms) {
                        return 0;
                }
                /* circuit now available for outbound dialing */
                check->last_release_time = 0;
+               ftdm_log_chan(check, FTDM_LOG_DEBUG, "Channel is now available, release guard timer expired %zdms ago\n", (time_diff - check->span->sig_release_guard_time_ms));
        }
        return 1;
 }