Lib: Do not set MSG_MORE on last message header if no body follows
Lib: Do not set MSG_MORE on last message header if no body follows

Introduced with commit 2bc1f9b1b0 (lib: use MSG_MORE on Linux for
basic.publish), amqp_basic_publish() sets MSG_MORE on all but the
last send() syscall it triggers on the TCP socket to improve
performance. However, if no message body is provided, no completing
call without MSG_MORE follows, keeping the TCP packet pending.

On Linux, this may introduce a message send delay, until the kernel
sends out the data anyway after 200ms. This may add a significant
delay if a consumer is waiting for such an empty (confirmation)
message.

alanxz/rabbitmq-c,alanxz/rabbitmq-c,alanxz/rabbitmq-c