diff options
Diffstat (limited to 'apps/filetree.c')
-rw-r--r-- | apps/filetree.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/filetree.c b/apps/filetree.c index 64283b274b..79ea1eb687 100644 --- a/apps/filetree.c +++ b/apps/filetree.c | |||
@@ -436,9 +436,14 @@ int ft_enter(struct tree_context* c) | |||
436 | char buf[MAX_PATH]; | 436 | char buf[MAX_PATH]; |
437 | struct entry* file = tree_get_entry_at(c, c->selected_item); | 437 | struct entry* file = tree_get_entry_at(c, c->selected_item); |
438 | int file_attr = file->attr; | 438 | int file_attr = file->attr; |
439 | int len; | ||
439 | 440 | ||
440 | if (c->currdir[1]) | 441 | if (c->currdir[1]) |
441 | snprintf(buf,sizeof(buf),"%s/%s",c->currdir, file->name); | 442 | { |
443 | len = snprintf(buf,sizeof(buf),"%s/%s",c->currdir, file->name); | ||
444 | if ((unsigned) len > sizeof(buf)) | ||
445 | splash(HZ, ID2P(LANG_PLAYLIST_ACCESS_ERROR)); | ||
446 | } | ||
442 | else | 447 | else |
443 | snprintf(buf,sizeof(buf),"/%s",file->name); | 448 | snprintf(buf,sizeof(buf),"/%s",file->name); |
444 | 449 | ||