mpd/src
Max Kellermann 374cc51f77 decoder/Bridge: add flag to make initial seek errors fatal
When the client wants to seek, but the decoder has already finished
decoding the current song, the player restarts the decoder with an
initial seek at the new position.  When this initial seek fails, MPD
pretends nothing has happened and plays this song from the start.

With this new flag, a restarted decoder marks the initial seek as
"essential" and fails the decoder if that seek fails.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/895
2020-06-10 17:49:10 +02:00
..
android android: Context: add GetAudioManager 2020-03-25 20:07:25 +01:00
archive archive/iso9660: skip empty filenames 2020-03-07 09:30:56 +01:00
AudioCompress
client client/Process, command/all: add noexcept 2019-08-20 20:28:15 +02:00
command command/all: "tagtypes" requires no permissions 2020-04-30 13:08:09 +02:00
config config/File: allow overriding top-level settings in includes 2020-01-17 14:58:40 +01:00
db src/db: fitting libmpdclient interface 2020-05-29 19:00:16 +02:00
decoder decoder/Bridge: add flag to make initial seek errors fatal 2020-06-10 17:49:10 +02:00
encoder [clang-tidy] change integer prefixes to uppercase 2020-03-26 17:25:20 +01:00
event event/SocketMonitor: handle epoll_ctl()=EBADF/ENOENT in Schedule() 2020-04-23 16:58:26 +02:00
filter filter/AutoConvert: implement Flush() 2019-03-24 22:42:06 +01:00
fs fs/NarrowPath: preserve nullptr in Path operator 2020-04-23 17:10:28 +02:00
haiku Haiku: add version info to the resources like win32 does 2019-03-29 14:33:27 +01:00
input [clang-tidy] change integer prefixes to uppercase 2020-03-26 17:25:20 +01:00
java java/Object: rename class Object to GlobalObject 2020-03-25 20:07:15 +01:00
lib lib/ffmpeg/Time: replace C99 compound literal with C++ initializer list 2020-05-27 15:54:34 +02:00
mixer treewide: use boost::lround when std::round is unavailable 2020-03-25 18:54:15 -07:00
neighbor event/*, ...: make GetEventLoop() const 2020-03-26 17:19:13 +01:00
net util/PrintException, ...: update copyright 2019-12-04 12:33:36 +01:00
output output/openal: disable -Wdeprecated-declarations on Apple 2020-05-28 13:59:52 +02:00
pcm Added missing channel order setups for ALSA 2020-04-15 13:13:09 +02:00
player decoder/Bridge: add flag to make initial seek errors fatal 2020-06-10 17:49:10 +02:00
playlist Support RSS feeds with application/xml MIME-type 2020-03-22 10:49:38 +01:00
protocol protocol/ArgParser: cast seek offset to SignedSongTime 2020-02-10 09:18:37 +01:00
queue queue/PlaylistEdit: fix relative destination offset when moving a range 2019-10-15 17:00:16 +02:00
song song/Filter: try ParseISO8601() first 2019-12-16 23:31:29 +01:00
sticker check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
storage storage/State: disable -Wcomma to work around Boost compiler warning 2020-05-28 14:00:31 +02:00
system system/Error: add FormatFileNotFound() 2019-12-04 12:33:38 +01:00
tag tag/Fallback: add tag fallback for AlbumSort 2020-04-22 22:00:38 +02:00
thread remove some more extra semicolons 2020-05-27 15:36:53 +02:00
time time/Convert: fix GetTimeZoneOffset() on Windows 2020-04-01 16:21:29 +02:00
unix unix/SignalHandlers: add RAII class 2019-02-05 21:36:51 +01:00
util use cwchar include 2020-05-30 13:22:04 +02:00
win32 check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
zeroconf zeroconf/AvahiPoll: don't pass ERROR|HANGUP to Schedule() 2020-04-23 15:19:24 +02:00
AudioFormat.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
AudioFormat.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
AudioParser.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
AudioParser.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
BulkEdit.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
CheckAudioFormat.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
CheckAudioFormat.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Chrono.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
CommandLine.cxx fs/NarrowPath: add class FromNarrowPath 2020-04-02 17:15:34 +02:00
CommandLine.hxx Main: allocate ConfigData on the stack 2018-08-19 23:08:23 +02:00
GitVersion.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
GitVersion.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
IcyMetaDataParser.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
IcyMetaDataParser.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Idle.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
Idle.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
IdleFlags.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
IdleFlags.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Instance.cxx Instance: use std::unique_ptr<> to manage the Database pointer 2019-02-20 20:48:20 +01:00
Instance.hxx Instance: use std::unique_ptr<> to manage the Database pointer 2019-02-20 20:48:20 +01:00
Listen.cxx Listen: use fs/XDG.hxx 2018-10-31 14:30:34 +01:00
Listen.hxx Listen: use struct ConfigData 2018-07-17 23:02:53 +02:00
LocateUri.cxx pcm/Convert, ...: add missing include for std::runtime_error 2019-12-16 22:52:50 +01:00
LocateUri.hxx LocateUri: pass URI plugin kind, optionally disables plugin verify 2019-04-18 10:03:15 +02:00
Log.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
Log.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogBackend.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
LogBackend.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
LogInit.cxx LogInit: add noexcept 2019-02-05 21:36:35 +01:00
LogInit.hxx LogInit: add noexcept 2019-02-05 21:36:35 +01:00
LogLevel.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogV.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ls.cxx input/Plugin: add attribute prefixes 2018-10-24 20:25:32 +02:00
ls.hxx input/Plugin: add attribute prefixes 2018-10-24 20:25:32 +02:00
Main.cxx raise default "max_connections" value to 100 2020-03-19 13:30:46 +01:00
Main.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Mapper.cxx Mapper: remove empty function mapper_finish() 2019-02-05 23:01:09 +01:00
Mapper.hxx Mapper: remove empty function mapper_finish() 2019-02-05 23:01:09 +01:00
MixRampInfo.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicBuffer.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicBuffer.hxx player/Thread: stop buffering if buffer is full 2018-09-21 19:05:25 +02:00
MusicChunk.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicChunk.hxx MusicChunk: pad MusicChunkInfo to a multiple of 8 bytes 2019-06-17 21:24:32 +02:00
MusicChunkPtr.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicChunkPtr.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicPipe.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
MusicPipe.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
open.h *: copyright year 2018 2018-10-31 17:54:59 +01:00
Partition.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Partition.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
Permission.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Permission.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
PlaylistDatabase.cxx util/Time*: move to time/ 2019-12-16 23:02:14 +01:00
PlaylistDatabase.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
PlaylistError.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
PlaylistError.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistFile.cxx PlaylistFile: ignore empty playlist names 2019-03-17 23:46:36 +01:00
PlaylistFile.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistPrint.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
PlaylistPrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistSave.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistSave.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PluginUnavailable.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
RemoteTagCache.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
RemoteTagCache.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
RemoteTagCacheHandler.hxx RemoteTagCache: new glue class for integrating RemoteTagScanner 2018-01-30 00:05:57 +01:00
ReplayGainConfig.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
ReplayGainGlobal.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
ReplayGainGlobal.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
ReplayGainInfo.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
ReplayGainInfo.hxx ReplayGainInfo: add static method Undefined() 2019-09-13 19:46:39 +02:00
ReplayGainMode.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ReplayGainMode.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SingleMode.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SingleMode.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongLoader.cxx LocateUri: pass URI plugin kind, optionally disables plugin verify 2019-04-18 10:03:15 +02:00
SongLoader.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
SongPrint.cxx util/Time*: move to time/ 2019-12-16 23:02:14 +01:00
SongPrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongSave.cxx util/Time*: move to time/ 2019-12-16 23:02:14 +01:00
SongSave.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongUpdate.cxx meson.build, SongUpdate: disable db-specific archive code if -Ddatabase=false 2019-11-04 14:15:48 +01:00
StateFile.cxx Instance: use std::unique_ptr<> to manage the Database pointer 2019-02-20 20:48:20 +01:00
StateFile.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
StateFileConfig.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
StateFileConfig.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
Stats.cxx treewide: use boost::lround when std::round is unavailable 2020-03-25 18:54:15 -07:00
Stats.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagArchive.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagArchive.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagFile.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagFile.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagPrint.cxx TagPrint: omit tags which were disabled by the client 2019-02-22 13:05:38 +01:00
TagPrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagSave.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagSave.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagStream.cxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TagStream.hxx check.h: remove obsolete header 2018-11-19 16:33:49 +01:00
TimePrint.cxx util/Time*: move to time/ 2019-12-16 23:02:14 +01:00
TimePrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00