diff options
Diffstat (limited to 'perfprofd/tests/perfprofd_test.cc')
-rw-r--r-- | perfprofd/tests/perfprofd_test.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/perfprofd/tests/perfprofd_test.cc b/perfprofd/tests/perfprofd_test.cc index 0dcaa530..54b36ea7 100644 --- a/perfprofd/tests/perfprofd_test.cc +++ b/perfprofd/tests/perfprofd_test.cc @@ -227,6 +227,26 @@ class PerfProfdRunner { // Log sleep calls but don't sleep. perfprofd_log_info("sleep %d seconds", seconds); } + + bool IsProfilingEnabled() const override { + // + // Check for existence of semaphore file in config directory + // + if (access(config_directory.c_str(), F_OK) == -1) { + W_ALOGW("unable to open config directory %s: (%s)", + config_directory.c_str(), strerror(errno)); + return false; + } + + // Check for existence of semaphore file + std::string semaphore_filepath = config_directory + + "/" + SEMAPHORE_FILENAME; + if (access(semaphore_filepath.c_str(), F_OK) == -1) { + return false; + } + + return true; + } }; int invoke() |