1. 03 Jan, 2008 1 commit
    • Eric Wong's avatar
      Cleanup #includes of standard system headers and put them in one place · cb8f1af3
      Eric Wong authored
      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
      cb8f1af3
  2. 05 Apr, 2007 1 commit
  3. 30 Jul, 2006 2 commits
    • Eric Wong's avatar
      commandError() cleanups, fixup gcc checks · e86fd65c
      Eric Wong authored
      stripped binary size reduced by 9k on my machine from making
      commandError a function.  We'll print out error messages slightly
      slower before, but the smaller binary is more than worth it.
      
      git-svn-id: https://svn.musicpd.org/mpd/trunk@4488 09075e82-0dd4-0310-85a5-a0d7c8717e4f
      e86fd65c
    • Eric Wong's avatar
      interface/connection malloc reductions from mpd-ke · 4cf5d04c
      Eric Wong authored
      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
      4cf5d04c
  4. 20 Jul, 2006 1 commit
  5. 17 Jul, 2006 1 commit
    • Eric Wong's avatar
      sparse: ANSI-fy function declarations · a234780a
      Eric Wong authored
      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
      a234780a
  6. 15 Jul, 2006 1 commit
  7. 14 Jul, 2006 1 commit
  8. 13 Jul, 2006 1 commit
  9. 10 Nov, 2004 1 commit
  10. 04 Jun, 2004 1 commit
  11. 14 Apr, 2004 1 commit
  12. 27 Feb, 2004 1 commit
  13. 23 Feb, 2004 1 commit