]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-6500: handle conversion from switch to ftdm cause type which almost match each...
authorBrian West <brian@freeswitch.org>
Fri, 2 May 2014 21:12:24 +0000 (16:12 -0500)
committerBrian West <brian@freeswitch.org>
Fri, 2 May 2014 16:19:52 +0000 (11:19 -0500)
libs/freetdm/mod_freetdm/mod_freetdm.c

index 90dcc1c7a7eff272246e243bd8c03966e3eff1d3..0690d77e0bc3837c5bf2b740ce97bcda33a79ca0 100644 (file)
@@ -606,9 +606,12 @@ static switch_status_t channel_on_hangup(switch_core_session_t *session)
        case FTDM_CHAN_TYPE_B:
                {
                        const char *var = NULL;
-                       ftdm_call_cause_t hcause = switch_channel_get_cause_q850(channel);
-                       if (hcause  < 1 || hcause > 127) {
+                       switch_call_cause_t ccause = switch_channel_get_cause_q850(channel);
+                       ftdm_call_cause_t hcause;
+                       if (ccause  < 1 || ccause > 127) {
                                hcause = FTDM_CAUSE_DESTINATION_OUT_OF_ORDER;
+                       } else {
+                               hcause = (ftdm_call_cause_t)ccause;
                        }
                        var = switch_channel_get_variable(channel, "ss7_rel_loc");
                        if (var) {