aboutsummaryrefslogtreecommitdiffstats
path: root/src/Directory.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-09Directory: remove method Free()Max Kellermann1-2/+2
2014-01-09Directory: convert to fixed-size structMax Kellermann1-37/+6
Using a variable-size struct with embedded string is not worth the trouble here. There are not so many Directory objects.
2014-01-09DetachedSong: fork of struct SongMax Kellermann1-8/+0
From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
2014-01-07util/Alloc: new library replacing GLib's g_malloc()Max Kellermann1-5/+5
2014-01-07Directory: make some code generic, move to VarSize.hxxMax Kellermann1-10/+5
2014-01-07Directory: use g_malloc() instead of g_malloc0()Max Kellermann1-3/+4
Explicit attribute initialization.
2013-12-05fs/Traits: split PathTraits type into PathTraitsFS and PathTraitsUTF8Denis Krjuchkov1-1/+1
2013-10-30*: update copyright year to 2013Max Kellermann1-1/+1
2013-10-21GetBaseUTF8Max Kellermann1-7/+2
2013-10-19*: use references instead of pointersMax Kellermann1-8/+8
2013-10-19*: use nullptr instead of NULLMax Kellermann1-21/+21
2013-09-04util/Error: new error passing libraryMax Kellermann1-6/+7
Replaces GLib's GError.
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann1-1/+1
2013-07-28song: convert header to C++Max Kellermann1-10/+10
2013-04-17song_sort: convert to C++Max Kellermann1-1/+1
2013-01-17path: convert to C++Max Kellermann1-1/+0
2013-01-03PlaylistVector: use std::listMax Kellermann1-7/+2
2013-01-03Directory: initialise in default constructorMax Kellermann1-0/+9
2013-01-03Directory: add constructor and destructorMax Kellermann1-18/+27
2013-01-03Directory: rename struct directory to DirectoryMax Kellermann1-34/+34
2013-01-02Directory: turn functions to methodsMax Kellermann1-67/+60
2013-01-02Directory: make the header C++ onlyMax Kellermann1-1/+1
2013-01-02PlaylistInfo: rename class, use std::stringMax Kellermann1-1/+1
2013-01-02db_lock: convert to C++Max Kellermann1-1/+1
2013-01-02playlist_vector: convert to C++Max Kellermann1-1/+1
2012-08-29SongFilter: convert to a C++ classMax Kellermann1-4/+3
2012-08-29locate: rename to SongFilter.cxxMax Kellermann1-1/+1
2012-08-15db_visitor: delete obsolete headerMax Kellermann1-1/+0
2012-08-09Directory: move code to directory_allocate()Max Kellermann1-8/+18
2012-08-08DatabaseSelection: add "match" attributeMax Kellermann1-4/+8
Let the database plugin do the match.
2012-08-07Database{Plugin,Visitor}: pass referencesMax Kellermann1-3/+3
2012-08-01db_plugin: convert to C++Max Kellermann1-18/+22
2012-06-13directory: require db lock for _{add,remove}_song()Max Kellermann1-0/+2
2012-04-04directory: use strrchr() instead of g_basename()Max Kellermann1-1/+9
g_basename() is deprecated in GLib 2.32.
2012-02-13directory: fix reverse order of child directoriestreblid1-1/+1
Directories are loaded in reverse order when MPD starts. Only fixed when doing a rescan.
2012-02-12playlist_vector: use the list_head libraryMax Kellermann1-5/+5
2012-02-02directory: require the caller to lock the db_mutexMax Kellermann1-20/+15
Reduce the number of lock/unlock cycles, and make database handling safer.
2012-02-02directory: add new objects to the end of the linked listMax Kellermann1-2/+2
This was the cause of the reversed ordering when loading a database file.
2012-01-29directory: fix deep path lookupMax Kellermann1-16/+14
This commit fixes a major regression in directory_lookup_directory(), which broke the deep lookup of directories.
2012-01-24directory: mark unused parameterMax Kellermann1-1/+2
2012-01-24directory: replace songvec with doubly linked listMax Kellermann1-13/+24
2012-01-24directory: add function directory_get_song(), ...Max Kellermann1-2/+32
Wrap songvec_find() and other songvec methods.
2012-01-24directory: replace dirvec with doubly linked listMax Kellermann1-22/+49
Random access is not needed, and a linked list is easier to manage: we don't need to (re-)allocate the pointer array.
2012-01-24directory: simplify constructors and clarify API documentationMax Kellermann1-4/+37
Pass only the "name" to a directory, instead of the full (relative) path.
2011-10-08db_print: print absolute URI of playlist entriesMax Kellermann1-1/+1
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.
2011-09-13db_visitor: add method playlist()Max Kellermann1-0/+8
2011-09-13db_plugin: add method visit()Max Kellermann1-3/+4
2011-09-13directory: don't visit "self" in _walk()Max Kellermann1-4/+4
Let the caller decide if the current directory should be visited.
2011-09-13directory: don't require a "directory" visitorMax Kellermann1-6/+6
.. to recurse. A visitor may not have one, but still be interested in a recursive search.
2011-09-13database: add struct db_visitorMax Kellermann1-19/+25
Use this struct for db_walk().