diff options
Diffstat (limited to 'src/ArchiveLookup.hxx')
-rw-r--r-- | src/ArchiveLookup.hxx | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/ArchiveLookup.hxx b/src/ArchiveLookup.hxx index 6e7669cb0..62ebbc0c5 100644 --- a/src/ArchiveLookup.hxx +++ b/src/ArchiveLookup.hxx @@ -20,12 +20,23 @@ #ifndef MPD_ARCHIVE_LOOKUP_HXX #define MPD_ARCHIVE_LOOKUP_HXX -/* - * This is the public API which is used by archive plugins to - * provide transparent archive decompression layer for mpd +/** + * + * archive_lookup is used to determine if part of pathname refers to an regular + * file (archive). If so then its also used to split pathname into archive file + * and path used to locate file in archive. It also returns suffix of the file. + * How it works: + * We do stat of the parent of input pathname as long as we find an regular file + * Normally this should never happen. When routine returns true pathname modified + * and split into archive, inpath and suffix. Otherwise nothing happens * + * For example: + * + * /music/path/Talco.zip/Talco - Combat Circus/12 - A la pachenka.mp3 + * is split into archive: /music/path/Talco.zip + * inarchive pathname: Talco - Combat Circus/12 - A la pachenka.mp3 + * and suffix: zip */ - bool archive_lookup(char *pathname, char **archive, char **inpath, char **suffix); #endif |