[Freeswitch-svn] [commit] r12855 - freeswitch/trunk/src/mod/applications/mod_fifo

FreeSWITCH SVN anthm at freeswitch.org
Tue Mar 31 13:30:13 PDT 2009


Author: anthm
Date: Tue Mar 31 15:30:13 2009
New Revision: 12855

Log:
FSCORE-343

Modified:
   freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c

Modified: freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c	(original)
+++ freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c	Tue Mar 31 15:30:13 2009
@@ -56,6 +56,7 @@
 	switch_memory_pool_t *pool;
 	int has_outbound;
 	int ready;
+	int is_static;
 };
 
 typedef struct fifo_node fifo_node_t;
@@ -1756,7 +1757,7 @@
 		void *val;
 		for (hi = switch_hash_first(NULL, globals.fifo_hash); hi; hi = switch_hash_next(hi)) {
 			switch_hash_this(hi, NULL, NULL, &val);
-			if ((node = (fifo_node_t *) val)) {
+			if ((node = (fifo_node_t *) val) && node->is_static) {
 				node->ready = 0;
 			}
 		}
@@ -1845,6 +1846,7 @@
 				
 			}
 			node->ready = 1;
+			node->is_static = 1;
 			switch_mutex_unlock(node->mutex);
 			
 			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "%s configured\n", node->name);
@@ -1862,11 +1864,10 @@
 		for (hi = switch_hash_first(NULL, globals.fifo_hash); hi; hi = switch_hash_next(hi)) {
 			int x = 0;
 			switch_hash_this(hi, NULL, NULL, &val);
-			if (!(node = (fifo_node_t *) val) || node->ready) {
+			if (!(node = (fifo_node_t *) val) || !node->is_static || node->ready) {
 				continue;
 			}
 
-
 			if (node_consumer_wait_count(node) || node->consumer_count || node_idle_consumers(node)) {
 				node->ready = 1;
 				switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "%s not removed, still in use.\n", node->name);



More information about the Freeswitch-svn mailing list