mpd/src
Max Kellermann ac0852b4e3 song/Filter: operator "==" never searches substrings in filter expressions
The protocol documentation says that the difference between `find` and
`search` is that `search` is case insensitive, but that's only half
the truth: `search` also searches for sub strings instead of matching
the whole string.  This part is undocumented and unfortunate, but at
this point, we can't change it.

However leaking this surprising behavior to the new filter expressions
was a bad idea; the "==" operator should never match substrings.  For
people who need that, we should add a new operator.
2018-11-04 13:57:34 +01:00
..
android *: copyright year 2018 2018-10-31 17:54:59 +01:00
archive *: copyright year 2018 2018-10-31 17:54:59 +01:00
AudioCompress
client *: copyright year 2018 2018-10-31 17:54:59 +01:00
command command/sticker: return ACK_ERROR_NO_EXIST for "no such sticker" 2018-10-31 19:19:07 +01:00
config *: copyright year 2018 2018-10-31 17:54:59 +01:00
db *: copyright year 2018 2018-10-31 17:54:59 +01:00
decoder *: copyright year 2018 2018-10-31 17:54:59 +01:00
encoder *: copyright year 2018 2018-10-31 17:54:59 +01:00
event *: copyright year 2018 2018-10-31 17:54:59 +01:00
filter *: copyright year 2018 2018-10-31 17:54:59 +01:00
fs *: copyright year 2018 2018-10-31 17:54:59 +01:00
haiku build with Meson instead of autotools 2018-10-14 23:41:38 +02:00
input *: copyright year 2018 2018-10-31 17:54:59 +01:00
java build with Meson instead of autotools 2018-10-14 23:41:38 +02:00
lib lib/xiph/meson.build: the Vorbis encoder requires the Vorbis decoder 2018-11-04 12:21:23 +01:00
mixer *: copyright year 2018 2018-10-31 17:54:59 +01:00
neighbor *: copyright year 2018 2018-10-31 17:54:59 +01:00
net net/IPv[46]Address: make the initializers more portable 2018-11-02 17:47:43 +01:00
output *: copyright year 2018 2018-10-31 17:54:59 +01:00
pcm *: copyright year 2018 2018-10-31 17:54:59 +01:00
player *: copyright year 2018 2018-10-31 17:54:59 +01:00
playlist *: copyright year 2018 2018-10-31 17:54:59 +01:00
protocol *: copyright year 2018 2018-10-31 17:54:59 +01:00
queue *: copyright year 2018 2018-10-31 17:54:59 +01:00
song song/Filter: operator "==" never searches substrings in filter expressions 2018-11-04 13:57:34 +01:00
sticker *: copyright year 2018 2018-10-31 17:54:59 +01:00
storage *: copyright year 2018 2018-10-31 17:54:59 +01:00
system system/FileDescriptor: check __linux__ instead of __linux 2018-11-02 16:50:38 +01:00
tag *: copyright year 2018 2018-10-31 17:54:59 +01:00
thread *: copyright year 2018 2018-10-31 17:54:59 +01:00
unix *: copyright year 2018 2018-10-31 17:54:59 +01:00
util *: copyright year 2018 2018-10-31 17:54:59 +01:00
win32 *: copyright year 2018 2018-10-31 17:54:59 +01:00
zeroconf zeroconf/glue: add fallback value for HOST_NAME_MAX 2018-11-04 11:12:03 +01: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 *: copyright year 2018 2018-10-31 17:54:59 +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
check.h *: copyright year 2018 2018-10-31 17:54:59 +01:00
CheckAudioFormat.cxx *: copyright year 2018 2018-10-31 17:54:59 +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 *: copyright year 2018 2018-10-31 17:54:59 +01: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 *: copyright year 2018 2018-10-31 17:54:59 +01:00
IcyMetaDataParser.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Idle.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Idle.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
IdleFlags.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
IdleFlags.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Instance.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Instance.hxx *: copyright year 2018 2018-10-31 17:54:59 +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 *: copyright year 2018 2018-10-31 17:54:59 +01:00
LocateUri.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Log.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Log.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogBackend.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogBackend.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogInit.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
LogInit.hxx *: copyright year 2018 2018-10-31 17:54:59 +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 *: copyright year 2018 2018-10-31 17:54:59 +01:00
Main.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Mapper.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Mapper.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
MixRampInfo.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
MusicBuffer.cxx MusicBuffer: remove noexcept from constructor 2018-09-21 17:11:52 +02:00
MusicBuffer.hxx player/Thread: stop buffering if buffer is full 2018-09-21 19:05:25 +02:00
MusicChunk.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
MusicChunk.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
MusicChunkPtr.cxx MusicChunkPtr: managed MusicChunk pointer 2018-06-22 23:11:52 +02:00
MusicChunkPtr.hxx MusicChunkPtr: managed MusicChunk pointer 2018-06-22 23:11:52 +02:00
MusicPipe.cxx *: copyright year 2018 2018-10-31 17:54:59 +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 *: copyright year 2018 2018-10-31 17:54:59 +01:00
Permission.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Permission.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistDatabase.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistDatabase.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistError.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistError.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistFile.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistFile.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
PlaylistPrint.cxx *: copyright year 2018 2018-10-31 17:54:59 +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 RemoteTagCache: new glue class for integrating RemoteTagScanner 2018-01-30 00:05:57 +01:00
RemoteTagCache.hxx RemoteTagCache: new glue class for integrating RemoteTagScanner 2018-01-30 00:05:57 +01:00
RemoteTagCacheHandler.hxx RemoteTagCache: new glue class for integrating RemoteTagScanner 2018-01-30 00:05:57 +01:00
ReplayGainConfig.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ReplayGainGlobal.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ReplayGainGlobal.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ReplayGainInfo.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
ReplayGainInfo.hxx *: copyright year 2018 2018-10-31 17:54:59 +01: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 *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongLoader.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongPrint.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongPrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongSave.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongSave.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
SongUpdate.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
StateFile.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
StateFile.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
StateFileConfig.cxx StateFileConfig: add attribute "restore_paused" 2018-07-17 23:40:14 +02:00
StateFileConfig.hxx StateFileConfig: add attribute "restore_paused" 2018-07-17 23:40:14 +02:00
Stats.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
Stats.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagArchive.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagArchive.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagFile.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagFile.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagPrint.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagPrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagSave.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagSave.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagStream.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TagStream.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TimePrint.cxx *: copyright year 2018 2018-10-31 17:54:59 +01:00
TimePrint.hxx *: copyright year 2018 2018-10-31 17:54:59 +01:00