diff --git a/communication_techniques/src/communication/c_cache.c b/communication_techniques/src/communication/c_cache.c index e0da7c9..8914f68 100644 --- a/communication_techniques/src/communication/c_cache.c +++ b/communication_techniques/src/communication/c_cache.c @@ -82,11 +82,11 @@ void *recv_one_data(void) static __thread int i; void *result; - if (unlikely(i % (BUF_SIZE / sizeof(void *)))) + if (unlikely(!(i % (BUF_SIZE / sizeof(void *))))) while (!comm.cons->channel->state); result = (void *) comm.cons->channel->buf[i++]; i %= (2 * BUF_SIZE) / sizeof(void *); - if (unlikely(i % (BUF_SIZE / sizeof(void *)))) + if (unlikely(!(i % (BUF_SIZE / sizeof(void *))))) comm.cons->channel->state = 0; return result; }