]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-11820 [core] check read_frame_callback in switch_ivr_sleep()
authorChris Rienzo <chris@signalwire.com>
Mon, 29 Apr 2019 19:17:13 +0000 (19:17 +0000)
committerAndrey Volk <andywolk@gmail.com>
Wed, 17 Jul 2019 19:30:41 +0000 (23:30 +0400)
src/switch_ivr.c

index 13de6a0fb6729ca3ad87d666c6f69c9ba4b25d69..a5b7d341dbf0ab1168f2ead1f95ff7fe561f0264 100644 (file)
@@ -303,6 +303,12 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_sleep(switch_core_session_t *session,
                        }
                }
 
+               if (read_frame && args && (args->read_frame_callback)) {
+                       if ((status = args->read_frame_callback(session, read_frame, args->user_data)) != SWITCH_STATUS_SUCCESS) {
+                               break;
+                       }
+               }
+
                if (sval && write_frame.datalen) {
                        switch_generate_sln_silence((int16_t *) write_frame.data, write_frame.samples, imp.number_of_channels, sval);
                        switch_core_session_write_frame(session, &write_frame, SWITCH_IO_FLAG_NONE, 0);