1. 02 Nov, 2014 1 commit
    • Max Kellermann's avatar
      decoder/faad: remove workaround for ancient libfaad2 ABI bug · f6b2899d
      Max Kellermann authored
      Many years ago, FAAD had a serious ABI bug: the NeAACDecInit()
      prototype in its header declared the "samplerate" parameter to be
      "unsigned long *", but internally, the function assumed it was
      "uint32_t *" instead.  On 32 bit machines, that was no difference, but
      on 64 bit, this left one portion of the return value uninitialized;
      and worse, on big-endian, the wrong word was filled.  This bug had to
      be worked around in MPD (commit 9c4e97a6).
      
      A few months later, the bug was fixed in the FAAD CVS in commit 1.117
      on file libfaad/decoder.c; the commit message was:
      
       "Use public headers internally to prevent duplicate declarations"
      
      The commit message was too brief at best; the problem was not
      duplicate declarations, but a prototype mismatch.  No mention of the
      bug fix in the ChangeLog.
      
      The MPD project never learned about this bug fix, and so MPD would
      always pass a "uin32_t *" dressed up as a "unsigned long *".  Nearly 6
      years later, it's about time to fix this second ABI problem.  Let's
      kill the workaround!
      f6b2899d
  2. 25 Oct, 2014 1 commit
    • Max Kellermann's avatar
      decoder/faad: remove workaround for ancient libfaad2 ABI bug · bc5a5357
      Max Kellermann authored
      Many years ago, FAAD had a serious ABI bug: the NeAACDecInit()
      prototype in its header declared the "samplerate" parameter to be
      "unsigned long *", but internally, the function assumed it was
      "uint32_t *" instead.  On 32 bit machines, that was no difference, but
      on 64 bit, this left one portion of the return value uninitialized;
      and worse, on big-endian, the wrong word was filled.  This bug had to
      be worked around in MPD (commit 9c4e97a6).
      
      A few months later, the bug was fixed in the FAAD CVS in commit 1.117
      on file libfaad/decoder.c; the commit message was:
      
       "Use public headers internally to prevent duplicate declarations"
      
      The commit message was too brief at best; the problem was not
      duplicate declarations, but a prototype mismatch.  No mention of the
      bug fix in the ChangeLog.
      
      The MPD project never learned about this bug fix, and so MPD would
      always pass a "uin32_t *" dressed up as a "unsigned long *".  Nearly 6
      years later, it's about time to fix this second ABI problem.  Let's
      kill the workaround!
      bc5a5357
  3. 24 Oct, 2014 1 commit
  4. 11 Jun, 2014 3 commits
  5. 15 Mar, 2014 1 commit
  6. 01 Mar, 2014 1 commit
  7. 27 Nov, 2013 1 commit
    • Denis Krjuchkov's avatar
      Add infrastructure for using multiple event loops · 46bab7e4
      Denis Krjuchkov authored
      This change adds two configuration options:
      
        --with-eventloop=[glib|internal|auto]
        --with-pollmethod=[epoll|auto]
      
      First allows switching between GLib event loop and internal one.
      Second chooses backend to use for internal event loop.
      Conditional compilation symbols are changed accordingly.
      Additional helper macro MPD_OPTIONAL_FUNC_NODEF is added as well.
      46bab7e4
  8. 16 Oct, 2013 1 commit
  9. 07 Aug, 2013 1 commit
  10. 06 Aug, 2013 1 commit
    • Max Kellermann's avatar
      configure.ac: add option --enable-eventfd · 47e16dbe
      Max Kellermann authored
      Remove the runtime check for eventfd(), hard-code the feature once
      it's been selected at compile time.  The class WakeFD is splitted into
      EventFD and EventPipe, using WakeFD as a macro diversion.
      47e16dbe
  11. 29 Jan, 2013 4 commits
  12. 28 Jan, 2013 1 commit
  13. 03 Jan, 2013 1 commit
  14. 03 Aug, 2012 1 commit
  15. 02 Aug, 2012 1 commit
  16. 01 Aug, 2012 1 commit
  17. 30 Jul, 2012 1 commit
  18. 09 Oct, 2011 2 commits
  19. 01 Sep, 2011 1 commit
  20. 07 Jan, 2011 3 commits
  21. 21 Apr, 2010 3 commits
  22. 16 Apr, 2010 1 commit
  23. 20 Jan, 2010 2 commits
  24. 26 May, 2009 1 commit
  25. 15 May, 2009 1 commit
    • Max Kellermann's avatar
      configure.ac: removed the --disable-lametest option · bad23421
      Max Kellermann authored
      The M4 function AM_PATH_LAME (m4/lame.m4) defined a configure flag
      named "--disable-lametest".  This is redundant with configure.ac's
      --disable-lame-encoder, and specifying both options may break the
      build.  Since AM_PATH_LAME is only called when the encoder plugin is
      enabled, we can safely remove that --disable-lametest option.
      bad23421
  26. 29 Apr, 2009 1 commit
  27. 15 Apr, 2009 2 commits
  28. 29 Mar, 2009 1 commit