Commit Graph

22 Commits

Author SHA1 Message Date
Eric Wong
89073cfbba logging cleanups
* 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
2006-08-01 04:18:53 +00:00
Eric Wong
da2d7e0c41 myfprintf: parse paths so we can reopen log files correctly
git-svn-id: https://svn.musicpd.org/mpd/trunk@4485 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-30 04:38:36 +00:00
Eric Wong
a331939d65 fix some warnings introduced in the big malloc-reduction patch
The myfprintf bugs that are fixed here were NOT introduced in the
last patch, it's just that the stricter warning checks from moving
to fprintf caused string format bugs to actually be checked by gcc

git-svn-id: https://svn.musicpd.org/mpd/trunk@4484 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-30 03:57:29 +00:00
Eric Wong
4cf5d04ca1 interface/connection malloc reductions from mpd-ke
This patch massively reduces the amount of heap allocations at
the interface/command layer.  Most commands with minimal output
should not allocate memory from the heap at all.  Things like
repeatedly polling status, currentsong, and volume changes
should be faster as a result, and more importantly, not a source
of memory fragmentation.

These changes should be safe in that there's no way for a
remote-client to corrupt memory or otherwise do bad stuff to
MPD, but an extra set of eyes to review would be good.  Of
course there's never any warranty :)

No longer do we use FILE * structures in the interface, which means
we don't have to allocate any new memory for most connections.

Now, before you go on about losing the buffering that FILE *
+implies+, remember that myfprintf() never took advantage of
any of the stdio buffering features.

To reduce the diff and make bugs easier to spot in the diff,
I've kept myfprintf in places where we write to files (and not
network interfaces).  Expect myfprintf to go away entirely soon
(we'll use fprintf for writing regular files).

git-svn-id: https://svn.musicpd.org/mpd/trunk@4483 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-30 03:43:38 +00:00
Avuton Olrich
29a25b9933 Add mpd-indent.sh
Indent the entire tree, hopefully we can keep
it indented.

git-svn-id: https://svn.musicpd.org/mpd/trunk@4410 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20 16:02:40 +00:00
Eric Wong
a234780aab sparse: ANSI-fy function declarations
These are just warnings from sparse, but it makes the output
easier to read.  I ran this through a quick perl script, but
of course verified the output by looking at the diff and making
sure the thing still compiles.

here's the quick perl script I wrote to generate this patch:
----------- 8< -----------
use Tie::File;
defined(my $pid = open my $fh, '-|') or die $!;
if (!$pid) {
open STDERR, '>&STDOUT' or die $!;
exec 'sparse', @ARGV or die $!;
}
my $na = 'warning: non-ANSI function declaration of function';
while (<$fh>) {
print STDERR $_;
if (/^(.+?\.[ch]):(\d+):(\d+): $na '(\w+)'/o) {
my ($f, $l, $pos, $func) = ($1, $2, $3, $4);
$l--;
tie my @x, 'Tie::File', $f or die "$!: $f";
print '-', $x[$l], "\n";
$x[$l] =~ s/\b($func\s*)\(\s*\)/$1(void)/;
print '+', $x[$l], "\n";
untie @x;
}
}

git-svn-id: https://svn.musicpd.org/mpd/trunk@4378 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 00:15:34 +00:00
Avuton Olrich
2a4a75d9c7 [CLEANUP] Make static what makes sense.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4337 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14 20:00:32 +00:00
J. Alexander Treuman
2fa7125cce Change shank's email address
git-svn-id: https://svn.musicpd.org/mpd/trunk@4333 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14 19:37:45 +00:00
Avuton Olrich
a37348a74f Huge header update, update the copyright and add
the GPL header where necessary

git-svn-id: https://svn.musicpd.org/mpd/trunk@4317 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-13 19:20:34 +00:00
Eric Wong
e2e7d113ad myfprintf: we should be near -ke speeds on most desktops
git-svn-id: https://svn.musicpd.org/mpd/trunk@3970 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-03-29 07:38:58 +00:00
Qball Cow
4b00c62587 DJWLindenaar's fix race condition and some memory leaks patch
git-svn-id: https://svn.musicpd.org/mpd/trunk@3681 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-11-18 12:09:05 +00:00
Warren Dukes
586a21688f config file change! now 'port' is optional and 'db_file' is required!
also, should have better error reporting when failing to open playlist or
music directory's, or writing the db, etc

git-svn-id: https://svn.musicpd.org/mpd/trunk@3027 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-06 19:00:58 +00:00
Warren Dukes
8ca1fa5250 todo update
git-svn-id: https://svn.musicpd.org/mpd/trunk@2499 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-03 18:13:45 +00:00
Warren Dukes
a03466016a potential fix for avuton's bug
git-svn-id: https://svn.musicpd.org/mpd/trunk@1850 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-07-12 15:23:07 +00:00
Warren Dukes
1af2272920 potential fixes for NHI\'s bugs
git-svn-id: https://svn.musicpd.org/mpd/trunk@1848 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-07-12 14:58:26 +00:00
Warren Dukes
80dd76db7f fix C99 stuff for commandError
also some slight optimizations to interfacePrintWithFD() and myfprintf()

git-svn-id: https://svn.musicpd.org/mpd/trunk@1503 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-06-15 18:06:21 +00:00
Warren Dukes
37db643217 clean-up a wee-bit of code
git-svn-id: https://svn.musicpd.org/mpd/trunk@895 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-04-29 19:34:30 +00:00
Warren Dukes
7f29bb1a8d log cycling and a few cleanups
git-svn-id: https://svn.musicpd.org/mpd/trunk@772 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-04-15 05:07:04 +00:00
Warren Dukes
549344d38a add vim shiznit to end of all source files
git-svn-id: https://svn.musicpd.org/mpd/trunk@750 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-04-14 14:53:41 +00:00
Warren Dukes
e4ef4ea6aa make some code look neater
git-svn-id: https://svn.musicpd.org/mpd/trunk@738 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-04-13 19:55:00 +00:00
Warren Dukes
860f8bda71 ok, rework myfprintf so it uses write() and never use any file stream
print functions.  this way we can always know wtf is going on!
also, remove some places where we were using fprintf and printf instead of
myfprintf

git-svn-id: https://svn.musicpd.org/mpd/trunk@734 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-04-13 19:08:38 +00:00
Warren Dukes
d35747a40c import from SF CVS
git-svn-id: https://svn.musicpd.org/mpd/trunk@1 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-02-23 23:41:20 +00:00