| Commit message (Collapse) | Author | Files | Lines |
|
Fold the case during construction, without having to create another
copy.
|
|
|
|
|
|
|
|
|
|
This finally enables the new embedded CUE sheet code: when a song file
contains a playlist, it is printed in the "lsinfo" output, so clients
get to know about this.
|
|
|
|
The protocol mandates that playlist URIs are absolute (i.e. full URI
relative to the music directory, not relative to the parent
directory). This adds the parameter "directory" to the "playlist"
visitor method.
|
|
Use it in handle_lsinfo(), and eliminate some duplicate code.
|
|
|
|
Add nonnull attributes and fix all callers.
|
|
Use this struct for db_walk().
|
|
|
|
Allow calling findAddIn() without a client object.
|
|
|
|
Allocate a player_control object where needed, and pass it around.
Each "client" object is associated with a "player_control" instance.
This prepares multi-player support.
|
|
In findAddInDirectory(), call playlist_append_song() directly, to have
some more type checking.
|
|
The only "return" statement always returns 0.
|
|
This fixes a regression in the patch "return multiple tag values per
song": even when the song has values for the specified tag type, the
empty string gets added to the set, because the "return" was removed.
This patch adds a flag which remembers whether at least one value was
found.
|
|
|
|
When collecting tag values for the result set, add all of a song's tag
values of the searched type. This affects the "list" command.
Previously, "list" only considered the first tag value of a song.
|
|
|
|
After we've been hit by Large File Support problems several times in
the past week (which only occur on 32 bit platforms, which I don't
have), this is yet another attempt to fix the issue.
|
|
|
|
|
|
|
|
The function is unused.
|
|
This updates the copyright header to all be the same, which is
pretty much an update of where to mail request for a copy of the GPL
and the years of the MPD project. This also puts all committers under
'The Music Player Project' umbrella. These entries should go
individually in the AUTHORS file, for consistancy.
|
|
Renamed numOfItems to num_items.
|
|
Export the "g_playlist" variable, and pass it to all playlist
functions. This way, we can split playlist.c easier into separate
parts. The code which initializes the singleton variable is moved to
playlist_global.c.
|
|
On some platforms, g_free() must be used for memory allocated by
GLib. This patch intends to correct a lot of occurrences, but is
probably not complete.
|
|
Merged casefolding code from two locations into this one library
function.
|
|
Changed the function prototypes to get locate_item_list objects
instead of num_items/items.
|
|
Instead of passing two parameters around (number of items, array of
items), combine both in a variable size struct.
|
|
Renamed functions and variables.
|
|
No CamelCase and no typedefs.
|
|
Pass const pointers where no writes are performed.
|
|
Don't use dbUtils.h functions. This reduces 4 full database walks to
just one.
|
|
directory_is_root() is cheaper than
isRootDirectory(directory_get_path()).
|
|
|
|
|
|
Renamed all public functions, prefix is "spl_".
|
|
No CamelCase in file names.
|
|
string_toupper() and strDupToUpper() were not able to deal with
character sets other than US-ASCII. Use GLib's g_utf8_casefold()
for strings.
|
|
Commit 0bfe7802 broke update for new files in the root directory,
because music_root->path was an empty string and not NULL. There were
some NULL tests missing. Change them to !isRootDirectory(path)
instead of path!=NULL.
|
|
CamelCase is ugly, rename the functions.
|
|
Yet another CamelCase removal patch.
|
|
Taming the directory.c monster, part II: move the database management
stuff to database. directory.c should only contain code which works
on directory objects.
|
|
Again, a data type which can be forward-declared.
|
|
The struct can be forward-declared by other headers, which relaxes the
header dependencies.
|