]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
freetdm: check if the event was created before firing it
authorMoises Silva <moy@sangoma.com>
Tue, 7 Jun 2011 13:54:50 +0000 (09:54 -0400)
committerMoises Silva <moy@sangoma.com>
Tue, 7 Jun 2011 13:54:50 +0000 (09:54 -0400)
libs/freetdm/mod_freetdm/mod_freetdm.c

index 731893a2f6de28bb6471568e3d65cf2efaff31c4..f188fc2d268050f5ee7724d8884133e9a82f054c 100755 (executable)
@@ -1855,29 +1855,31 @@ static FIO_SIGNAL_CB_FUNCTION(on_common_signal)
                break;
        }
 
-       switch_event_add_header(event, SWITCH_STACK_BOTTOM, "span-name", "%s", ftdm_channel_get_span_name(sigmsg->channel));
-       switch_event_add_header(event, SWITCH_STACK_BOTTOM, "span-number", "%d", ftdm_channel_get_span_id(sigmsg->channel));
-       switch_event_add_header(event, SWITCH_STACK_BOTTOM, "chan-number", "%d", ftdm_channel_get_id(sigmsg->channel));
+       if (event) {
+               switch_event_add_header(event, SWITCH_STACK_BOTTOM, "span-name", "%s", ftdm_channel_get_span_name(sigmsg->channel));
+               switch_event_add_header(event, SWITCH_STACK_BOTTOM, "span-number", "%d", ftdm_channel_get_span_id(sigmsg->channel));
+               switch_event_add_header(event, SWITCH_STACK_BOTTOM, "chan-number", "%d", ftdm_channel_get_id(sigmsg->channel));
 
-       if (alarmbits & FTDM_ALARM_RED) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "red");
-       }
-       if (alarmbits & FTDM_ALARM_YELLOW) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "yellow");
-       }
-       if (alarmbits & FTDM_ALARM_RAI) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "rai");
-       }
-       if (alarmbits & FTDM_ALARM_BLUE) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "blue");
-       }
-       if (alarmbits & FTDM_ALARM_AIS) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "ais");
-       }
-       if (alarmbits & FTDM_ALARM_GENERAL) {
-               switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "general");
+               if (alarmbits & FTDM_ALARM_RED) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "red");
+               }
+               if (alarmbits & FTDM_ALARM_YELLOW) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "yellow");
+               }
+               if (alarmbits & FTDM_ALARM_RAI) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "rai");
+               }
+               if (alarmbits & FTDM_ALARM_BLUE) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "blue");
+               }
+               if (alarmbits & FTDM_ALARM_AIS) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "ais");
+               }
+               if (alarmbits & FTDM_ALARM_GENERAL) {
+                       switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "alarm", "general");
+               }
+               switch_event_fire(&event);
        }
-       switch_event_fire(&event);
 
        return FTDM_BREAK;
 }