int j;
stream->write_function(stream, "+OK\n");
- for(j = 0; j <= span->chan_count; j++) {
+ for(j = 1; j <= span->chan_count; j++) {
dump_chan(span, j, stream);
}
for(i = 1; i <= globals.span_index; i++) {
span = globals.spans[i];
if (zap_test_flag(span, ZAP_SPAN_CONFIGURED)) {
- for(j = 0; j <= span->chan_count && span->channels[j]; j++) {
+ for(j = 1; j <= span->chan_count && span->channels[j]; j++) {
zap_channel_destroy(span->channels[j]);
}
}
return ZAP_FAIL;
}
span->channels[span->chan_count] = new_chan;
+ memset(new_chan, 0, sizeof(*new_chan));
}
new_chan->type = type;
}
}
- check = span->channels[i];
+ if (!(check = span->channels[i])) {
+ status = ZAP_FAIL;
+ zap_mutex_unlock(span->mutex);
+ goto done;
+ }
if (zap_test_flag(check, ZAP_CHANNEL_READY) &&
!zap_test_flag(check, ZAP_CHANNEL_INUSE) &&