| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
The log file is duped to STDOUT_FILENO and STDERR_FILENO. No need to
keep another copy of it in out_fd all the time. We only need it once
once in setup_log_output().
|
|
|
|
| |
Allow logging to syslog if log_file is configured to "syslog".
|
|
|
|
|
| |
Added log_init_file() and log_init_stdout(), preparing for other
logging targets.
|
|
|
|
|
|
| |
The logging library currently has 3 constructor functions: initLog(),
open_log_files(), setup_log_output(), called in this order. Merged
the first two.
|
| |
|
|
|
|
| |
Declare log_threshold as GLogLevelFlags.
|
|
|
|
|
|
|
|
| |
If the user wants the log files with a specific mode, he has to start
MPD with the correct umask. Don't hard-code that.
This fixes a bug: when log cycling failed, MPD would not restore the
old umask.
|
|
|
|
| |
Merged code from open_log_files() and cycle_log_files().
|
|
|
|
|
| |
Removed the "error_file" option. There is only one log file now. If
a user wants to see only the errors, he should configure a log_level.
|
|
|
|
|
|
| |
Make "secure" a log level different from "default". "secure" should be
right between "default" and "verbose". Map "default" to Glib's
"MESSAGE" log level.
|
|
|
|
|
| |
We want to remove gcc.h eventually. This takes care of all the G_GNUC_PRINTF
macros.
|
|
|
|
|
| |
We want to remove gcc.h eventually. This takes care of all the
G_GNUC_NORETURN macros.
|
| |
|
|
|
|
|
| |
The threshold was only checked in the deprecated logging functions
(ERROR(), WARNING(), ...). Add the check to the GLib logging handler.
|
| |
|
|
|
|
|
| |
When logging to a file, log_charset would be NULL and g_convert()
would abort.
|
|
|
|
|
| |
When logging to the terminal, we should print messages in the system
character set. Convert all messages in this case.
|
|
|
|
| |
Use the bool data type for flags.
|
|
|
|
|
| |
Install a default handler which writes to stdout or stderr, and
prepends a time stamp. This looks just like the 0.13.x logger.
|
|
|
|
|
|
| |
The logging functions from log.h are deprecated, and the code should
use GLib logging instead. Make ERROR(), WARNING() etc. call g_logv()
internally.
|
|
|
|
| |
Renamed the variable "logLevel" to "log_threshold".
|
|
|
|
|
| |
The warning buffer is a complex piece of code for no good reason.
Remove it and find a better solution, e.g. open the log file earlier.
|
|
|
|
| |
Prefer GLib over utils.h.
|
|
|
|
|
| |
When there are standardized headers, use these instead of the bloated
os_compat.h.
|
|
|
|
| |
As usual, include only headers which are really needed.
|
|
|
|
|
|
| |
I'm really no fan of the warning log, it's too complex
for how little it gets used; but fixing it is another
problem.
|
|
|
|
|
|
|
| |
Do explicit casts before comparing signed with unsigned. The one in
log.c actually fixes another warning: in the expanded macro, there may
be a check "logLevel>=0", which is always true.
git-svn-id: https://svn.musicpd.org/mpd/trunk@7230 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
| |
Although it may not happen in mpd code, it is perfectly possible for a
newly allocated file descriptor to be zero. For theoretical
correctness, allow 0.
git-svn-id: https://svn.musicpd.org/mpd/trunk@7194 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will make refactoring features easier, especially now that
pthreads support and larger refactorings are on the horizon.
Hopefully, this will make porting to other platforms (even
non-UNIX-like ones for masochists) easier, too.
os_compat.h will house all the #includes for system headers
considered to be the "core" of MPD. Headers for optional
features will be left to individual source files.
git-svn-id: https://svn.musicpd.org/mpd/trunk@7130 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
| |
This way we'll avoid listening on fd=0 and have a better
chance of having fd=0 as /dev/null
git-svn-id: https://svn.musicpd.org/mpd/trunk@6852 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
| |
(yes, it helps to actually compile code before committing it)
git-svn-id: https://svn.musicpd.org/mpd/trunk@6851 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We redirect stdin to /dev/null to work around a libao bug, but
this bug has been fixed in libao since 2003 (according to jat).
However, there are likely other bugs in other libraries (and
even our code!) that handle fd=0 incorrectly and I'd rather not
take the risk[1]. So So it's easiest to just keep
fd=0==/dev/null for now...
[1] - I've seen several of these myself...
git-svn-id: https://svn.musicpd.org/mpd/trunk@6849 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Thanks to _noth_ for the patch, this fixes Mantis bug #1534
_noth_ wrote:
> When MPD is launched from a non-interactive shell, it enters an endless
> loop, filling up its error log file with "error accept()'ing" messages.
> This is caused by the fact that stdin is already closed when mpd starts
> up. listenOnPort() opens up the first of its sockets as fd 0 (the first
> empty fd table position). Then, setup_log_output()->redirect_stdin()
> overwrites fd0 (fd=open("/dev/null",...); dup2(fd, STDIN_FILENO);)
> without checking if it corresponds to the actual standard input (or if
> it is open in the first place). This means that listenSockets[0].fd now
> is a fd for /dev/null, thus doIOForInterfaces()->getConnections() can't
> accept(2) on it and fails with the above error. The attached patch fixes
> this for me.
git-svn-id: https://svn.musicpd.org/mpd/trunk@6843 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
| |
We used a bare '15' in several places and it's not immediately
obvious where it came from. This makes it more obvious
git-svn-id: https://svn.musicpd.org/mpd/trunk@6829 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
|
|
| |
Previously, the warning log was only flushed if creating the db or logging
to stdout. This meant that under normal circumstances (no db creation,
logging to files) the warning log was never flushed. This caused a bug
when a warning was printed for each call to the status command where the
warning buffer would grow endlessly, eventually using more and more CPU to
reallocate it.
git-svn-id: https://svn.musicpd.org/mpd/trunk@6660 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@5834 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
| |
Also took out an unnecessary memset in getPlayerErrorStr
git-svn-id: https://svn.musicpd.org/mpd/trunk@5396 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@5374 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
| |
implementation, and fixing it is a big enough job that I don't know when
I'll get around to it. Probably best just starting from scratch anyhow.
git-svn-id: https://svn.musicpd.org/mpd/trunk@5373 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
| |
Some compilers and linkers aren't smart enough to optimize this,
as global variables are implictly initialized to zero. As a
result, binaries are a bit smaller as more goes in the .bss and
less in the text section.
git-svn-id: https://svn.musicpd.org/mpd/trunk@5254 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@5229 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
| |
warning messages.
git-svn-id: https://svn.musicpd.org/mpd/trunk@5228 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@5227 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
| |
do something sane.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4867 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@4663 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@4613 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
| |
git-svn-id: https://svn.musicpd.org/mpd/trunk@4538 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
| |
(and fdprintf was never meant to be reentrant, either)
A huge thanks to welshbyte for reporting the bug and being very
helpful in helping me fix it.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4537 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Moved all logging-related stuff into log.c
(and not myfprintf.c)
* ISO C90-compliant strftime usage:
%e and %R replaced with %d and %H:%M respectively
* Got rid of variadic macros since some old-school compilers
don't like them
* compiling with -DNDEBUG disables the DEBUG() macro
git-svn-id: https://svn.musicpd.org/mpd/trunk@4512 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|
|
|
|
|
|
|
| |
This shaves another 5-6k because we've removed the paranoid
fflush() calls after every fprintf. Now we only fflush()
when we need to
git-svn-id: https://svn.musicpd.org/mpd/trunk@4493 09075e82-0dd4-0310-85a5-a0d7c8717e4f
|