summaryrefslogtreecommitdiff
path: root/apps/open_plugin.c
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2022-05-02 16:42:26 +0100
committerAidan MacDonald <amachronic@protonmail.com>2022-05-02 16:42:32 +0100
commit6e37b318510d66fc6ec7e94f350062279b242afb (patch)
treefd8199966fd4d759613e1b5e8771634c5463e0d8 /apps/open_plugin.c
parentdadfbfc6a5a5705f3080f14b98941c3fd8c82368 (diff)
downloadrockbox-6e37b318510d66fc6ec7e94f350062279b242afb.tar.gz
rockbox-6e37b318510d66fc6ec7e94f350062279b242afb.zip
apps: fix use of negative fd in open_plugin.c
Bug reported by UBSan. Change-Id: I3223a496dfa5df4e3df97fb88a14ea0174d4b428
Diffstat (limited to 'apps/open_plugin.c')
-rw-r--r--apps/open_plugin.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/open_plugin.c b/apps/open_plugin.c
index f7f55d58cd..fad528e215 100644
--- a/apps/open_plugin.c
+++ b/apps/open_plugin.c
@@ -222,6 +222,8 @@ static int op_get_entry(uint32_t hash, int32_t lang_id,
222 logf("OP get_entry hash: %x lang id: %d db: %s", hash, lang_id, dat_file); 222 logf("OP get_entry hash: %x lang id: %d db: %s", hash, lang_id, dat_file);
223 223
224 int fd = open(dat_file, O_RDONLY); 224 int fd = open(dat_file, O_RDONLY);
225 if(fd < 0)
226 return OPEN_PLUGIN_NOT_FOUND;
225 opret = op_find_entry(fd, entry, hash, lang_id); 227 opret = op_find_entry(fd, entry, hash, lang_id);
226 close(fd); 228 close(fd);
227 } 229 }