When connecting message buffers between Ruby controllers, it is
easy to mistakenly connect multiple controllers to the same message
buffer. This patch prints a more descriptive fatal message than the
previous assert statement in order to facilitate easier debugging.
void setPriority(int rank) { m_priority_rank = rank; }
void setConsumer(Consumer* consumer)
{
- assert(m_consumer == NULL);
+ if (m_consumer != NULL) {
+ fatal("Trying to connect %s to MessageBuffer %s. \
+ \n%s already connected. Check the cntrl_id's.\n",
+ *consumer, *this, *m_consumer);
+ }
m_consumer = consumer;
}