summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorWilliam Wilgus <me.theuser@yahoo.com>2018-12-14 06:04:39 -0600
committerWilliam Wilgus <me.theuser@yahoo.com>2018-12-14 06:09:38 -0600
commit6f020ef155de094fd2cdf30ed8258e7fed07a2e8 (patch)
treee2f7b82cac5c1b460be5c7dd6b73f2e4d059c935 /apps
parent3f110daf3032187c052a6e3c1b05d01d1a4582d0 (diff)
downloadrockbox-6f020ef155de094fd2cdf30ed8258e7fed07a2e8.zip
rockbox-6f020ef155de094fd2cdf30ed8258e7fed07a2e8.tar.gz
rockbox-6f020ef155de094fd2cdf30ed8258e7fed07a2e8.tar.bz2
rockbox-6f020ef155de094fd2cdf30ed8258e7fed07a2e8.tar.xz
filetree.c add checks for invalid file entries
Admittedly I can not really think of a reason this would occur in normal use but if it does it'll result in a crash so better safe than sorry Change-Id: I593652bb658475bbd9a18026243c02524f5e7ccb
Diffstat (limited to 'apps')
-rw-r--r--apps/filetree.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/apps/filetree.c b/apps/filetree.c
index 2570b46..e45348d 100644
--- a/apps/filetree.c
+++ b/apps/filetree.c
@@ -436,6 +436,12 @@ int ft_enter(struct tree_context* c)
int rc = GO_TO_PREVIOUS;
char buf[MAX_PATH];
struct entry* file = tree_get_entry_at(c, c->selected_item);
+ if (!file)
+ {
+ splashf(HZ, str(LANG_READ_FAILED), str(LANG_UNKNOWN));
+ return rc;
+ }
+
int file_attr = file->attr;
int len;
@@ -680,6 +686,12 @@ int ft_enter(struct tree_context* c)
}
struct entry* file = tree_get_entry_at(c, c->selected_item);
+ if (!file)
+ {
+ splashf(HZ, str(LANG_READ_FAILED), str(LANG_UNKNOWN));
+ return rc;
+ }
+
plugin = filetype_get_plugin(file);
if (plugin)
{