messages: only try to emit an internal() message if post_func is set

During early startup, an internal message might be triggered by syslog-ng
while the internal() fabric is not yet in place, which caused a SIGSEGV.

In this case, warning (and above) messages were printed to stderr, but
anything below warning used the normal LogMessage based code path, which
segfaulted as log_msg_global_init() was not yet called.

Signed-off-by: Balazs Scheidler <bazsi@balabit.hu>
fixup! hostname: fix abort when the local hostname is unknown to both DNS and /etc/hosts