1. 04 Jan, 2010 1 commit
  2. 01 Jan, 2010 2 commits
    • Max Kellermann's avatar
      input_stream: return allocated input_stream objects · d3b763a4
      Max Kellermann authored
      Major API redesign: don't let the caller allocate the input_stream
      object.  Let each input plugin allocate its own (derived/extended)
      input_stream pointer.  The "data" attribute can now be removed, and
      all input plugins simply cast the input_stream pointer to their own
      structure (with an "struct input_stream base" as the first attribute).
      d3b763a4
    • Avuton Olrich's avatar
      Update copyright notices. · 9d3865cb
      Avuton Olrich authored
      9d3865cb
  3. 31 Dec, 2009 2 commits
  4. 30 Dec, 2009 1 commit
  5. 29 Dec, 2009 1 commit
    • Max Kellermann's avatar
      input/rewind: new input_stream wrapper to allow stream rewinding · c88f95a2
      Max Kellermann authored
      This replaces the rewinding buffer code from the CURL input plugin.
      It is more generic, and allows rewinding even when the server sends
      Icy-Metadata (which would have been too difficult to implement within
      the CURL plugin).
      
      This is a rather complex patch for the stable branch (v0.15.x), but it
      fixes a serious problem: the "vorbis" decoder plugin was unable to
      play streams with Icy-Metadata, because it couldn't rewind the stream
      after detecting the codec (Vorbis vs. FLAC).
      c88f95a2
  6. 16 Dec, 2009 3 commits
  7. 15 Dec, 2009 5 commits
  8. 14 Dec, 2009 1 commit
  9. 12 Nov, 2009 1 commit
    • Max Kellermann's avatar
      include config.h in all sources · 5b82ffc2
      Max Kellermann authored
      After we've been hit by Large File Support problems several times in
      the past week (which only occur on 32 bit platforms, which I don't
      have), this is yet another attempt to fix the issue.
      5b82ffc2
  10. 10 Nov, 2009 3 commits
  11. 07 Nov, 2009 1 commit
    • Max Kellermann's avatar
      set the close-on-exec flag on all file descriptors · e3af0032
      Max Kellermann authored
      Added the "fd_util" library, which attempts to use the new thread-safe
      Linux system calls pipe2(), accept4() and the options O_CLOEXEC,
      SOCK_CLOEXEC.  Without these, it falls back to FD_CLOEXEC, which is
      not thread safe.
      
      This is particularly important for the "pipe" output plugin (and
      others, such as JACK/PulseAudio), because we were heavily leaking file
      descriptors to child processes.
      e3af0032
  12. 20 Oct, 2009 1 commit
  13. 13 Oct, 2009 4 commits
  14. 11 Oct, 2009 3 commits
    • Max Kellermann's avatar
      input_stream: use "goffset" instead of "off_t" · 727c301f
      Max Kellermann authored
      The "off_t" type may change when you enable or disable large file
      support on 32 bit platforms.  This caused severe ABI problems within
      MPD when we enabled LFS for the first time: two sources included
      config.h and sys/types.h in different order, and had different off_t
      sizes - leading to memory corruption because of ABI incompatibility.
      This patch attempts to get rid of all public "off_t" uses: it removes
      "off_t" from the input_stream ABI/API, and switches to GLib's 64 bit
      "goffset" type.  This may hurt 32 bit embedded platforms a tiny bit,
      but that's not even measurable.
      727c301f
    • Max Kellermann's avatar
      input/curl: don't abort if a packet has only metadata · af92b1c2
      Max Kellermann authored
      When a received chunk of data has only icy-metadata, there was no
      usable data left for input_curl_read() to return, and thus it returned
      0 bytes.  "0" however is a special value for "end of file" or
      "error".  This patch makes input_curl_read() read more data from the
      socket, until the read request can be fulfilled (or until there's
      really EOF).
      af92b1c2
    • Max Kellermann's avatar
      input/curl: moved code to fill_buffer() · 01655809
      Max Kellermann authored
      01655809
  15. 20 Sep, 2009 1 commit
  16. 28 Jul, 2009 2 commits
  17. 28 May, 2009 1 commit
    • Mathieu Rochette's avatar
      input/file: log message on error · 0dedfe7d
      Mathieu Rochette authored
      If a file is removed the library, next time mpd will try to play it it
      will result in an error 'ERROR: problems decoding some/file.ogg'.
      Nothing is written in log files (verbose mode or not)
      
      [mk: append strerror(errno)]
      0dedfe7d
  18. 28 Apr, 2009 1 commit
  19. 25 Apr, 2009 1 commit
  20. 27 Mar, 2009 1 commit
  21. 13 Mar, 2009 1 commit
    • Avuton Olrich's avatar
      all: Update copyright header. · 0aee49bd
      Avuton Olrich authored
      This updates the copyright header to all be the same, which is
      pretty much an update of where to mail request for a copy of the GPL
      and the years of the MPD project. This also puts all committers under
      'The Music Player Project' umbrella. These entries should go
      individually in the AUTHORS file, for consistancy.
      0aee49bd
  22. 09 Mar, 2009 1 commit
  23. 06 Mar, 2009 1 commit
  24. 02 Mar, 2009 1 commit
    • Max Kellermann's avatar
      input_lastfm: new input plugin for last.fm radio · 4220e6b0
      Max Kellermann authored
      The lastfm input plugin enables MPD to play lastfm:// URLs.  This
      plugin is not complete yet: it plays only the first song in the
      last.fm playlist, and the playlist parser isn't even implemented
      properly.
      4220e6b0