]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-11951: JB: rare crash in reading the chan var (it maybe called without a session...
authorDragos Oancea <dragos@signalwire.com>
Mon, 25 Mar 2019 19:22:23 +0000 (19:22 +0000)
committerDragos Oancea <dragos@signalwire.com>
Wed, 24 Jul 2019 13:16:35 +0000 (13:16 +0000)
src/switch_jitterbuffer.c

index f27b5ee8e1ed0083e3c07d7bc7c2051d8d8fe71d..8eabe61aba0e6017f4caf669f94ed5b2be49b96f 100644 (file)
@@ -880,18 +880,17 @@ SWITCH_DECLARE(void) switch_jb_set_session(switch_jb_t *jb, switch_core_session_
 {
        const char *var;
 
-       jb->session = session;
-       jb->channel = switch_core_session_get_channel(session);
-
-       if (jb->type == SJB_VIDEO && !switch_test_flag(jb, SJB_QUEUE_ONLY) && 
-               (var = switch_channel_get_variable_dup(jb->channel, "jb_video_low_bitrate", SWITCH_FALSE, -1))) {
-               int tmp = atoi(var);
-
-               if (tmp >= 128 && tmp <= 10240) {
-                       jb->video_low_bitrate = (uint32_t)tmp;
+       if (session) {
+               jb->session = session;
+               jb->channel = switch_core_session_get_channel(session);
+               if (jb->type == SJB_VIDEO && !switch_test_flag(jb, SJB_QUEUE_ONLY) && 
+                       (var = switch_channel_get_variable_dup(jb->channel, "jb_video_low_bitrate", SWITCH_FALSE, -1))) {
+                       int tmp = atoi(var);
+                       if (tmp >= 128 && tmp <= 10240) {
+                               jb->video_low_bitrate = (uint32_t)tmp;
+                       }
                }
        }
-
 }
 
 SWITCH_DECLARE(void) switch_jb_set_flag(switch_jb_t *jb, switch_jb_flag_t flag)