Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | nfs/Connection: check for disappearing libnfs socket | Max Kellermann | 2014-08-31 | 1 | -0/+18 |
| | |||||
* | nfs/Connection: use only BroadcastError() | Max Kellermann | 2014-08-31 | 1 | -4/+1 |
| | | | | | Since BroadcastError() calls BroadcastMountError(), there's no need to check mount_finished here. | ||||
* | nfs/Connection: nfs_get_fd() can return -1 | Max Kellermann | 2014-08-31 | 1 | -0/+3 |
| | | | | | While reconnecting to the NFS server, the socket is -1, because there is no socket. Fixes a potential crash (assertion failure). | ||||
* | input/nfs: notify client on error | Max Kellermann | 2014-08-31 | 1 | -0/+2 |
| | | | | Fixes hanging NFS client. | ||||
* | nfs/Connection: use nfs_get_error() for mount error | Max Kellermann | 2014-08-31 | 1 | -2/+3 |
| | |||||
* | nfs/Connection: fix assertion failure | Max Kellermann | 2014-08-31 | 1 | -1/+3 |
| | |||||
* | output/alsa, pcm: rename "DSD over USB" to "DoP" | Max Kellermann | 2014-08-31 | 5 | -50/+50 |
| | | | | | The standard has been renamed since the early draft that was implemented in MPD. | ||||
* | Merge tag 'v0.18.13' | Max Kellermann | 2014-08-31 | 4 | -9/+39 |
|\ | |||||
| * | PlaylistControl: use SeekSongOrder(current) to keep current song | Max Kellermann | 2014-08-31 | 1 | -1/+1 |
| | | | | | | | | | | | | The "current" attribute is a "song order", not a "song position". This is usually the same - except in random mode. Fixes Mantis ticket 0004073. | ||||
| * | PlaylistControl: move code to new method SeekSongOrder() | Max Kellermann | 2014-08-31 | 2 | -7/+19 |
| | | |||||
| * | output/alsa: fix endless loop at end of file in dsd_usb mode | Max Kellermann | 2014-08-31 | 1 | -0/+9 |
| | | |||||
| * | output/{alsa,oss}: add assertions | Max Kellermann | 2014-08-31 | 2 | -0/+6 |
| | | |||||
| * | decoder/gme: fix song duration | Max Kellermann | 2014-08-29 | 1 | -1/+1 |
| | | | | | | | | The unit of gme_info_t::length is milliseconds, not centiseconds. | ||||
* | | DecoderAPI: use std::min() | Max Kellermann | 2014-08-31 | 1 | -3/+1 |
| | | |||||
* | | MusicChunk: remove special case for num_frames==0 | Max Kellermann | 2014-08-31 | 2 | -6/+1 |
| | | | | | | | | Simply return an empty WritableBuffer, not a nulled one. | ||||
* | | MusicChunk: copy AudioFormat only when chunk is empty | Max Kellermann | 2014-08-31 | 1 | -4/+4 |
| | | |||||
* | | PlaylistMapper: pass the Storage::MapUTF() result to playlist_open_remote() | Max Kellermann | 2014-08-30 | 1 | -1/+1 |
| | | | | | | | | | | Finally allows loading playlist files on a storage plugin. Commit 297e2747 attempted to implement this, but failed due to this bug. | ||||
* | | decoder/sndfile: refactor frame_to_time() | Max Kellermann | 2014-08-30 | 1 | -8/+6 |
| | | |||||
* | | *: add missing Compiler.h includes | Max Kellermann | 2014-08-30 | 21 | -0/+21 |
| | | | | | | | | Necessary for "final" on gcc 4.6. | ||||
* | | Chrono: workaround for gcc 4.6 constexpr problems | Max Kellermann | 2014-08-30 | 1 | -4/+15 |
| | | |||||
* | | PlayerControl: make settings "const" | Max Kellermann | 2014-08-30 | 1 | -2/+2 |
| | | |||||
* | | PlayerControl: update include guard | Max Kellermann | 2014-08-30 | 1 | -2/+2 |
| | | |||||
* | | output/alsa: fix signed/unsigned comparison warning | Max Kellermann | 2014-08-30 | 1 | -1/+1 |
| | | |||||
* | | db/simple: fix build failure without zlib | Max Kellermann | 2014-08-30 | 1 | -1/+4 |
| | | |||||
* | | ArgParser: allow fractional seconds in ParseCommandArg(SongTime) | Max Kellermann | 2014-08-29 | 1 | -4/+4 |
| | | |||||
* | | CrossFade: pass total_time as SignedSongTime instance | Max Kellermann | 2014-08-29 | 3 | -4/+7 |
| | | |||||
* | | db/Stats: use std::chrono::duration for the total duration | Max Kellermann | 2014-08-29 | 4 | -6/+11 |
| | | | | | | | | Use milliseconds precision to reduce rounding errors. | ||||
* | | db/upnp: use DatabaseStats::Clear() | Max Kellermann | 2014-08-29 | 1 | -4/+1 |
| | | |||||
* | | db/Count: use std::chrono::duration for the total time | Max Kellermann | 2014-08-29 | 1 | -6/+9 |
| | | | | | | | | Use milliseconds precision to reduce rounding errors. | ||||
* | | TagHandler: pass SongTime to duration() | Max Kellermann | 2014-08-29 | 22 | -66/+81 |
| | | |||||
* | | DecoderAPI: pass SignedSongTime to decoder_initialized() | Max Kellermann | 2014-08-29 | 25 | -130/+157 |
| | | |||||
* | | Chrono: add methods FromScale() | Max Kellermann | 2014-08-29 | 1 | -0/+24 |
| | | |||||
* | | Chrono: rename ToScale() parameter | Max Kellermann | 2014-08-29 | 1 | -4/+4 |
| | | |||||
* | | decoder/faad: bit_rate==0 is an error | Max Kellermann | 2014-08-29 | 1 | -4/+4 |
| | | |||||
* | | MusicChunk: use SignedSongTime for the time stamp | Max Kellermann | 2014-08-29 | 5 | -10/+12 |
| | | |||||
* | | MultipleOutputs: use SignedSongTime for elapsed_time | Max Kellermann | 2014-08-29 | 3 | -10/+11 |
| | | |||||
* | | PlayerThread: use SongTime for elapsed_time | Max Kellermann | 2014-08-29 | 5 | -17/+17 |
| | | |||||
* | | PlayerControl: use SignedSongTime for the song duration | Max Kellermann | 2014-08-29 | 3 | -14/+16 |
| | | |||||
* | | DecoderControl: use SignedSongTime for the song duration | Max Kellermann | 2014-08-29 | 3 | -4/+6 |
| | | |||||
* | | Tag: use SignedSongTime for the song duration | Max Kellermann | 2014-08-29 | 24 | -82/+98 |
| | | |||||
* | | Chrono: convert SongTime to SignedSongTime implicitly | Max Kellermann | 2014-08-29 | 1 | -0/+5 |
| | | |||||
* | | Chrono: add SignedSongTime::FromS(unsigned) | Max Kellermann | 2014-08-29 | 1 | -0/+4 |
| | | |||||
* | | Chrono: add methods ToS(), RoundS() | Max Kellermann | 2014-08-29 | 1 | -0/+16 |
| | | |||||
* | | Chrono: add method SignedSongTime::Negative() | Max Kellermann | 2014-08-29 | 1 | -0/+7 |
| | | |||||
* | | DecoderControl: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 5 | -30/+19 |
| | | |||||
* | | PlaylistEdit: pass std::chrono::duration to SetSongIdRange() | Max Kellermann | 2014-08-28 | 3 | -20/+20 |
| | | |||||
* | | db/simple/Song: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 3 | -10/+12 |
| | | |||||
* | | db/LightSong: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 7 | -24/+28 |
| | | |||||
* | | DetachedSong: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 10 | -45/+51 |
| | | |||||
* | | Chrono: override operator+ and operator- | Max Kellermann | 2014-08-28 | 1 | -14/+23 |
| | | | | | | | | | | Make sure we return the correct type. This obsoletes the cast constructor trick. |