]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
dont end on break events
authorAnthony Minessale <anthm@freeswitch.org>
Sat, 10 Dec 2011 01:20:48 +0000 (19:20 -0600)
committerAnthony Minessale <anthm@freeswitch.org>
Sat, 10 Dec 2011 01:20:52 +0000 (19:20 -0600)
src/mod/endpoints/mod_rtmp/rtmp.c

index 701487020e690ed9a92182fff3094493632450a2..3dc9e53f2066488ed0cb978bd9b201d7690f4585 100644 (file)
@@ -708,10 +708,14 @@ switch_status_t rtmp_handle_data(rtmp_session_t *rsession)
        }  else if (rsession->state == RS_ESTABLISHED) {
                /* Process RTMP packet */
                switch(rsession->parse_state) {
+                       switch_status_t rstatus;
+
                        case 0:
                                // Read the header's first byte
                                s = 1;
-                               if (rsession->profile->io->read(rsession, (unsigned char*)buf, &s) != SWITCH_STATUS_SUCCESS) {
+                               rstatus = rsession->profile->io->read(rsession, (unsigned char*)buf, &s);
+
+                               if (rstatus != SWITCH_STATUS_SUCCESS && !SWITCH_STATUS_IS_BREAK(rstatus)) {
                                        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Read error\n");
                                        return SWITCH_STATUS_FALSE;
                                }