aboutsummaryrefslogtreecommitdiffstats
path: root/src/command (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-11-11queue/Playlist: seek methods return bool/Error instead of PlaylistResultMax Kellermann1-9/+12
2015-11-11command/CommandError: send verbose error message to clientMax Kellermann1-22/+55
2015-11-11PlaylistError: remove unused code "ERRNO"Max Kellermann1-4/+0
2015-11-11player/Control: add Lock prefix to locking method namesMax Kellermann1-4/+4
2015-10-27command/queue: add range parameter to plchanges and plchangesposidMax Kellermann2-4/+14
2015-10-22LocateUri: new library to classify URIs in a standard wayMax Kellermann5-151/+205
2015-10-20PlaylistPrint: fix -Wunused #ifndef ENABLE_DATABASEMax Kellermann1-0/+1
2015-10-20DetachedSong: move code from Update() to LoadFile()Max Kellermann1-1/+1
Avoid duplicate AllocatedPath::FromUTF8() invocations in two callers.
2015-10-20command/DatabaseCommands: pass URI to handle_lsinfo2()Max Kellermann3-6/+3
2015-10-20command/FileCommands: fix access to absolute paths in "readcomments"Max Kellermann1-6/+3
2015-08-24db/UniqueTags, tag/Set, ...: use typedef tag_mask_tMax Kellermann1-3/+3
2015-08-14client, command: use StringIsEqual()Max Kellermann4-25/+27
2015-08-14command/CommandListBuilder: postpone "size" initializationMax Kellermann2-2/+2
2015-08-14protocol/Result: move current_command to class ResponseMax Kellermann1-14/+2
2015-08-14protocol/Result: move command_list_num to class ResponseMax Kellermann1-4/+1
2015-08-13command: pass Response object to command callbacksMax Kellermann25-395/+246
2015-08-12client/Response: new Client wrapper class for writing responsesMax Kellermann17-465/+588
2015-08-11command/Request: add parser methodsMax Kellermann8-67/+92
Wrapper for protocol/ArgParser.cxx.
2015-08-11protocol/ArgParser: add overload with max_value parameterMax Kellermann2-26/+4
2015-08-11protocol/ArgParser: overload as ParseCommandArg(), pass referencesMax Kellermann6-57/+42
2015-08-11command/Request: new struct wrapping ConstBuffer<const char *>Max Kellermann26-215/+262
2015-08-11protocol/ArgParser: add struct RangeArgMax Kellermann3-31/+32
2015-08-11command/{Queue,Other}: eliminate local "bool" variableMax Kellermann3-13/+6
2015-03-24PlaylistSave: return bool/Error instead of PlaylistResultMax Kellermann1-2/+4
2015-03-03*: change C-style prototypes, drop "(void)"Max Kellermann2-4/+8
2015-03-03FileCommands: use Path::HasNewline()Max Kellermann1-3/+3
2015-03-02StorageCommands: use PathTraitsUTF8 for protocol argumentMax Kellermann1-1/+1
2015-02-28FileCommands: use PathTraitsFS typedefsMax Kellermann1-2/+2
2015-02-28fs/FileInfo: new library providing GetFileInfo()Max Kellermann1-7/+7
Replaces StatFile(), with a portable data object.
2015-02-28FileCommands: skip special files completelyMax Kellermann1-0/+2
Previously, MPD printed the time stamp without printing the file name. That made no sense.
2015-02-28storage/FileInfo: rename to StorageFileInfoMax Kellermann1-4/+4
2015-02-09command/{Queue,File}Commands: drop "file:///" prefix for absolute pathsMax Kellermann2-13/+15
Requiring this prefix makes the client's intention very clear, but it was too hard to understand why this prefix was needed. Initially, my intention was to differentiate from broken clients which prefix relate URIs with a slash; once MPD allowed that. In the past few years however, MPD has disallowed that, and there was no significant breakage (except for the "add /" special case which some clients apparently still do). So I figure it's about time to define that an URI that begins with a slash points to an arbitrary file on the file system.
2015-01-28StickerDatabase: convert the struct name to upper caseMax Kellermann1-1/+1
2015-01-01Copyright year 2015Max Kellermann31-31/+31
2014-12-12sticker/Match: add inequality operatorsMax Kellermann1-0/+4
2014-12-12sticker/Match: add operator "EQUALS"Max Kellermann1-1/+17
Mapped to "=" in the MPD protocol. This is the first operator, initially supporting value matches in the MPD protocol.
2014-12-12sticker/Song: add enum StickerOperator to sticker_song_find()Max Kellermann1-0/+4
2014-12-12sticker/Database: use the Error libraryMax Kellermann1-7/+23
2014-12-09AllCommands: use ARRAY_SIZE()Max Kellermann1-1/+2
2014-12-08command: use ConstBuffer<const char *> for argument listMax Kellermann25-420/+417
2014-12-08AllCommands: simplify the tokenizer loopMax Kellermann1-17/+19
2014-12-08AllCommands: assign current_command earlyMax Kellermann1-5/+4
2014-12-08AllCommands: remove redundant initializerMax Kellermann1-1/+1
2014-12-06AllCommands: make variables more localMax Kellermann1-16/+13
2014-12-06AllCommands: make the commands array "constexpr"Max Kellermann1-1/+1
2014-11-25{Tag,Song}Print, PlayerCommands: report song duration with milliseconds ↵Max Kellermann1-0/+4
precision
2014-11-18QueueCommands: workaround for buggy clients that send "add /"Max Kellermann1-1/+10
2014-11-18DatabaseCommands: add "window" parameter to "search"/"find"Max Kellermann1-1/+13
2014-10-25AllCommands: "commands" returns playlist commands only if playlist_directory ↵Max Kellermann3-0/+23
configured
2014-10-09StoragePlugin: pass EventLoop to constructorMax Kellermann1-2/+4