diff options
author | Christopher Ferris <cferris@google.com> | 2021-10-12 16:24:28 +0200 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-10-12 16:24:28 +0200 |
commit | 0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5 (patch) | |
tree | 4add26827a281192ccbad1902eb0477dce7fd652 /minui | |
parent | Import translations. DO NOT MERGE ANYWHERE (diff) | |
parent | Do not write past end of inotify event structure. (diff) | |
download | android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar.gz android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar.bz2 android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar.lz android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar.xz android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.tar.zst android_bootable_recovery-0dc29da7841e9d6d93e4d3483fc4d9897b29f0c5.zip |
Diffstat (limited to 'minui')
-rw-r--r-- | minui/events.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/minui/events.cpp b/minui/events.cpp index 87f811225..863ac7474 100644 --- a/minui/events.cpp +++ b/minui/events.cpp @@ -29,7 +29,9 @@ #include <functional> #include <memory> +#include <string> +#include <android-base/strings.h> #include <android-base/unique_fd.h> #include "minui/minui.h" @@ -118,12 +120,12 @@ static int inotify_cb(int fd, __unused uint32_t epevents) { } offset += sizeof(inotify_event) + pevent->len; - pevent->name[pevent->len] = '\0'; - if (strncmp(pevent->name, "event", 5)) { + std::string event_name(pevent->name, pevent->len); + if (!android::base::StartsWith(event_name, "event")) { continue; } - android::base::unique_fd dfd(openat(dirfd(dir.get()), pevent->name, O_RDONLY)); + android::base::unique_fd dfd(openat(dirfd(dir.get()), event_name.c_str(), O_RDONLY)); if (dfd == -1) { break; } |