aboutsummaryrefslogtreecommitdiffstats
path: root/src/dirvec.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2008-10-12dirvec: introduce locking for all iteratorsEric Wong1-7/+29
Like the songvec nr_lock, only one lock is used for all traversals since they're rarely changed. This only projects traversals, but not the individual structures themselves.
2008-10-12dirvec: add dirvec_for_each iteratorEric Wong1-0/+16
This will make it easier to introduce locking
2008-10-11dirvec: constant pointers in dirvec_find()Max Kellermann1-1/+1
dirvec_find() does not modify the object, thus it should get a const pointer.
2008-10-11directory: eliminate CamelCaseMax Kellermann1-1/+1
CamelCase is ugly, rename the functions. [ew: "directory_get_directory" was too confusing, using "directory_get_subdir" instead (old function was named "getSubDirectory")]
2008-10-11directory: converted typedef Directory to struct directoryMax Kellermann1-8/+9
The struct can be forward-declared by other headers, which relaxes the header dependencies.
2008-10-11dirvec: moved code to dirvec.cMax Kellermann1-10/+6
Having all functions as static (non-inline) functions generates GCC warnings, and duplicates binary code across several object files. Most of dirvec's methods are too complex for becoming inline functions. Move them all to dirvec.c and publish the prototypes in dirvec.h.
2008-09-28directory: replace DirectoryList with dirvecEric Wong1-0/+73
Small memory reduction compared to songvec since most users have much fewer dirs than songs, but still nice to have.