diff options
Diffstat (limited to 'apps/tree.c')
-rw-r--r-- | apps/tree.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/apps/tree.c b/apps/tree.c index 6265eadeaa..fb748a56d6 100644 --- a/apps/tree.c +++ b/apps/tree.c | |||
@@ -870,7 +870,7 @@ static int onplay_screen(char* dir, char* file) | |||
870 | break; | 870 | break; |
871 | 871 | ||
872 | default: | 872 | default: |
873 | /* ignore button releases */ | 873 | /* ignore button releases */ |
874 | if (!(btn & BUTTON_REL)) | 874 | if (!(btn & BUTTON_REL)) |
875 | exit = true; | 875 | exit = true; |
876 | break; | 876 | break; |
@@ -1293,6 +1293,7 @@ bool dirbrowse(char *root) | |||
1293 | tree_max_on_screen)) | 1293 | tree_max_on_screen)) |
1294 | { | 1294 | { |
1295 | /* start scroll */ | 1295 | /* start scroll */ |
1296 | reload_dir = true; | ||
1296 | restore = true; | 1297 | restore = true; |
1297 | } | 1298 | } |
1298 | else | 1299 | else |
@@ -1343,7 +1344,7 @@ bool dirbrowse(char *root) | |||
1343 | ata_spin(); | 1344 | ata_spin(); |
1344 | 1345 | ||
1345 | /* do we need to rescan dir? */ | 1346 | /* do we need to rescan dir? */ |
1346 | if (reload_root || | 1347 | if (reload_dir || reload_root || |
1347 | lastfilter != global_settings.dirfilter || | 1348 | lastfilter != global_settings.dirfilter || |
1348 | lastsortcase != global_settings.sort_case) | 1349 | lastsortcase != global_settings.sort_case) |
1349 | { | 1350 | { |
@@ -1352,9 +1353,12 @@ bool dirbrowse(char *root) | |||
1352 | dirlevel = 0; | 1353 | dirlevel = 0; |
1353 | reload_root = false; | 1354 | reload_root = false; |
1354 | } | 1355 | } |
1355 | dircursor = 0; | 1356 | if (! reload_dir ) |
1356 | dirstart = 0; | 1357 | { |
1357 | lastdir[0] = 0; | 1358 | dircursor = 0; |
1359 | dirstart = 0; | ||
1360 | lastdir[0] = 0; | ||
1361 | } | ||
1358 | lastfilter = global_settings.dirfilter; | 1362 | lastfilter = global_settings.dirfilter; |
1359 | lastsortcase = global_settings.sort_case; | 1363 | lastsortcase = global_settings.sort_case; |
1360 | restore = true; | 1364 | restore = true; |