From 73f70b467f0deb913343ea72c023e45d10f5dc5b Mon Sep 17 00:00:00 2001 From: Kweku Adams Date: Tue, 12 Jun 2018 17:07:11 -0700 Subject: [PATCH] Treating all FileSection files as device specific. Arc++ devices don't have the /d/wakeup_sources file. There's a chance other devices won't have it either, and there may be other files that we thought were standard but are actually not, so it's safer to just assume that not every file will be available on every device and not treat a missing file as an error. Bug: 110109543 Test: atest incidentd_test Change-Id: Ie0ce0b1b18f97e6421137c2ad350c644399e6d41 Merged-In: Ief09427f08d18aee611d057ddafdb9a3466744db (cherry picked from commit c112f8d7c607501f0fa8894ab42ad228684a96c7) --- cmds/incidentd/src/Section.cpp | 4 +++- cmds/incidentd/tests/Section_test.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cmds/incidentd/src/Section.cpp b/cmds/incidentd/src/Section.cpp index bb5221c7404ce..f19f8365c85e9 100644 --- a/cmds/incidentd/src/Section.cpp +++ b/cmds/incidentd/src/Section.cpp @@ -255,7 +255,9 @@ status_t FileSection::Execute(ReportRequestSet* requests) const { unique_fd fd(open(mFilename, O_RDONLY | O_CLOEXEC)); if (fd.get() == -1) { ALOGW("FileSection '%s' failed to open file", this->name.string()); - return this->deviceSpecific ? NO_ERROR : -errno; + // There may be some devices/architectures that won't have the file. + // Just return here without an error. + return NO_ERROR; } FdBuffer buffer; diff --git a/cmds/incidentd/tests/Section_test.cpp b/cmds/incidentd/tests/Section_test.cpp index 3c338b3a36c8b..5d2f38d927d73 100644 --- a/cmds/incidentd/tests/Section_test.cpp +++ b/cmds/incidentd/tests/Section_test.cpp @@ -145,7 +145,7 @@ TEST_F(SectionTest, FileSection) { TEST_F(SectionTest, FileSectionNotExist) { FileSection fs1(NOOP_PARSER, "notexist", false, QUICK_TIMEOUT_MS); - ASSERT_EQ(NAME_NOT_FOUND, fs1.Execute(&requests)); + ASSERT_EQ(NO_ERROR, fs1.Execute(&requests)); FileSection fs2(NOOP_PARSER, "notexist", true, QUICK_TIMEOUT_MS); ASSERT_EQ(NO_ERROR, fs2.Execute(&requests));