Fixed the bug of the memory corruption.

It is because when return memory back to the pool, small message is
less than RECV_BUFFER_SIZE_SMALL(4K) not MAX_SHORT_MESSAGE_LENGTH(128bytes).
Because of wrong size, the receive function returned messages with sizes
between 128 bytes and 4K  to the large buffer pool while they should have
been returned to small buffer pool.

Signed-off-by: Huy Bui <huybui@anl.gov>