]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-3872 --resolve
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 2 Feb 2012 23:38:08 +0000 (17:38 -0600)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 2 Feb 2012 23:38:08 +0000 (17:38 -0600)
src/switch_core_media_bug.c

index 8727fa896cb03814cb2af734a0e8283a1cc63488..cffeb0e2b9f74935f62ef51006eaacff6d721ab2 100644 (file)
@@ -213,19 +213,14 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_bug_read(switch_media_bug_t *b
                return SWITCH_STATUS_FALSE;
        }
 
-       if (fill) {
-               fill_read = !do_read;
-               fill_write = !do_write;
-       }
-       
-       if (fill && fill_read && fill_write) {
-               return SWITCH_STATUS_FALSE;
-       }
 
-       if (!((do_read || fill_read) && (do_write || fill_write))) {
+       fill_read = !do_read;
+       fill_write = !do_write;
+
+       if (fill_read && fill_write) {
                return SWITCH_STATUS_FALSE;
        }
-       
+
        if (do_read) {
                switch_mutex_lock(bug->read_mutex);
                if (switch_buffer_read(bug->raw_read_buffer, &rh, sizeof(rh))) {
@@ -336,6 +331,10 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_bug_read(switch_media_bug_t *b
                return SWITCH_STATUS_BREAK;
        }
 
+       if (fill_read || fill_write) {
+               return SWITCH_STATUS_FALSE;
+       }
+
        return SWITCH_STATUS_SUCCESS;
 }