switch_memory_pool_t *pool;
int has_outbound;
int ready;
+ int is_static;
};
typedef struct fifo_node fifo_node_t;
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;
}
}
}
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);
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);