From 986a49b8d301b476b1ab9b81d7e4ad49e915979f Mon Sep 17 00:00:00 2001 From: Warren Dukes Date: Wed, 10 Nov 2004 22:08:14 +0000 Subject: todo update, now with pseudo code! Get yours now! (Sorry we do not accept credit cards) git-svn-id: https://svn.musicpd.org/mpd/trunk@2590 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- TODO | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/TODO b/TODO index 1999e5b09..28789239e 100644 --- a/TODO +++ b/TODO @@ -1,21 +1,36 @@ 0.12 ---- -*) add genre, date, composer metadata - -*) rewrite metadata/db handling - *) rewrite search and find to be more flexible and elegant - *) implemnt list command - *) for each TagTrackerItem, include a temp varaible for storing - if it has been printed already - *) reset this variable before list command processing +*) rewrite search, find, locate to tag LocateTagItem pairs *) rewrite filename handling *) use memory more efficiently, by iteratively constructing filename *) create a function for creating directory names: - *) returns a static string *) when creating the string, check that the same directory string wasn't just created (store last Directory * ptr) *) this should be very fast! and save memory + *) static char * buffer, that only grows in size during life + span + *) implement like: + static char * buffer = NULL; + static int bufferSize = 0; + static int lastDirectory * last = NULL; + static int pos; + + if(last == thisOne) return buffer[pos]; + + pos = bufferSIze; + for(parentDir; !rootDir; parent = parent->parent) { + pos -= strlen(parent); + if(pos < 0) i{ + realloc(-pos bytes); + pos = 0; + } + /* we don't want to append a '\0', so use + strncpy */ + strncpy(buffer[pos], parent, strlen(parent)); + } + + return buffer; *) implement listener socket protocol as documented here: http://www.musicpd.org/wiki/moin.cgi/MpdListenerProtocol -- cgit v1.2.3