diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2005-08-30 07:52:36 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2005-08-30 07:52:36 +0000 |
commit | 196376c3c2b74a1f0f6f3040f833491d1b45e5f6 (patch) | |
tree | 928f9c50cf2413dfbd102c18d57585a1ee811466 /apps/dbtree.c | |
parent | d565269cfa71b23deae19c17494354855ab096d9 (diff) | |
download | rockbox-196376c3c2b74a1f0f6f3040f833491d1b45e5f6.tar.gz rockbox-196376c3c2b74a1f0f6f3040f833491d1b45e5f6.zip |
Added ID3 database support for individual tracks in the context menu
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7421 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/dbtree.c')
-rw-r--r-- | apps/dbtree.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/apps/dbtree.c b/apps/dbtree.c index 1121ea4070..e3704ac381 100644 --- a/apps/dbtree.c +++ b/apps/dbtree.c | |||
@@ -478,6 +478,22 @@ void db_exit(struct tree_context* c) | |||
478 | c->firstpos = c->pos_history[c->dirlevel]; | 478 | c->firstpos = c->pos_history[c->dirlevel]; |
479 | } | 479 | } |
480 | 480 | ||
481 | int db_get_filename(struct tree_context* c, char *buf, int buflen) | ||
482 | { | ||
483 | int rc; | ||
484 | int filenum = c->dircursor + c->dirstart; | ||
485 | int pathoffset = ((int*)c->dircache)[filenum * c->dentry_size + 1]; | ||
486 | |||
487 | lseek(tagdb_fd, pathoffset, SEEK_SET); | ||
488 | rc = read(tagdb_fd, buf, buflen); | ||
489 | |||
490 | if (rc < tagdbheader.songlen) { | ||
491 | DEBUGF("short path read(%ld) = %d\n", sizeof(buf), rc); | ||
492 | return -2; | ||
493 | } | ||
494 | return 0; | ||
495 | } | ||
496 | |||
481 | static int db_play_folder(struct tree_context* c) | 497 | static int db_play_folder(struct tree_context* c) |
482 | { | 498 | { |
483 | char buf[MAX_PATH]; | 499 | char buf[MAX_PATH]; |