diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2005-12-31 14:16:49 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2005-12-31 14:16:49 +0000 |
commit | cceba5593d7a02ad4564f86154dd62f9ac05b08b (patch) | |
tree | 763f9b32ffce32f0d79ee89cfe4411098cd18df1 /winsup/cygwin/syslog.cc | |
parent | 1b68dd91cf5a3a2642f2bdb09065dc59a884028b (diff) | |
download | cygnal-cceba5593d7a02ad4564f86154dd62f9ac05b08b.tar.gz cygnal-cceba5593d7a02ad4564f86154dd62f9ac05b08b.tar.bz2 cygnal-cceba5593d7a02ad4564f86154dd62f9ac05b08b.zip |
* syslog.cc (vsyslog): Decrement len if trailing \n has been removed.
Add \n when writing to stderr if LOG_PERROR option is set.
Diffstat (limited to 'winsup/cygwin/syslog.cc')
-rw-r--r-- | winsup/cygwin/syslog.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/winsup/cygwin/syslog.cc b/winsup/cygwin/syslog.cc index 2ea0d6207..b8bd669e2 100644 --- a/winsup/cygwin/syslog.cc +++ b/winsup/cygwin/syslog.cc @@ -402,12 +402,15 @@ vsyslog (int priority, const char *message, va_list ap) char *total_msg = pass.get_message (); int len = strlen (total_msg); if (len != 0 && (total_msg[len - 1] == '\n')) - total_msg[len - 1] = '\0'; + total_msg[--len] = '\0'; msg_strings[0] = total_msg; if (_my_tls.locals.process_logopt & LOG_PERROR) - write (STDERR_FILENO, total_msg, len + 1); + { + write (STDERR_FILENO, total_msg, len); + write (STDERR_FILENO, "\n", 1); + } int fd; if ((fd = try_connect_syslogd (priority, total_msg, len + 1)) >= 0) |