#include "aul/app_request.h"
#include "aul/aul_api.h"
#include "aul/aul_util.h"
+#include "aul/cpu_inheritance.hh"
#include "aul/include/aul.h"
#include "aul/include/aul_app_com.h"
#include "aul/include/aul_cmd.h"
constexpr const char kWmMethodNameInfo[] = "GetVisibleWinInfo";
constexpr const char kWmMethodNameFocus[] = "GetFocusProc";
constexpr const unsigned int kWmDbusTimeout = 5000;
+constexpr const char kDestProcess[] = "enlightenment";
GDBusConnection* system_conn;
return AUL_R_EINVAL;
}
+ CPUInheritance inheritance(kDestProcess);
GDBusConnection* conn = GetConn();
if (conn == nullptr)
return AUL_R_ERROR;
return AUL_R_EINVAL;
}
+ CPUInheritance inheritance(kDestProcess);
GDBusConnection* conn = GetConn();
if (conn == nullptr)
return AUL_R_ERROR;
} // namespace
-CPUInheritance::CPUInheritance(pid_t pid, int cmd) {
+CPUInheritance::CPUInheritance(std::string destination)
+ : destination_(std::move(destination)) {
+ int ret = resource_set_cpu_inheritance(gettid(), destination_.c_str(), -1);
+ if (ret != 0)
+ _E("resource_set_cpu_inheritance() is failed. error(%d)", ret);
+ else
+ inherited_ = true;
+}
+
+CPUInheritance::CPUInheritance(pid_t pid, int cmd)
+ : destination_(DEST_PROCESS) {
if (pid == -2 && IsLaunchRequest(cmd)) {
- int ret = resource_set_cpu_inheritance(gettid(),
- const_cast<char*>(DEST_PROCESS), -1);
+ int ret = resource_set_cpu_inheritance(gettid(), destination_.c_str(), -1);
if (ret != 0)
_E("resource_set_cpu_inheritance() is failed. error(%d)", ret);
else
}
}
-CPUInheritance::CPUInheritance() {
- int ret = resource_set_cpu_inheritance(gettid(),
- const_cast<char*>(DEST_PROCESS), -1);
+CPUInheritance::CPUInheritance() : destination_(DEST_PROCESS) {
+ int ret = resource_set_cpu_inheritance(gettid(), destination_.c_str(), -1);
if (ret != 0)
_E("resource_set_cpu_inheritance() is failed. error(%d)", ret);
else
CPUInheritance::~CPUInheritance() {
if (inherited_) {
- int ret = resource_clear_cpu_inheritance(gettid(),
- const_cast<char*>(DEST_PROCESS));
+ int ret = resource_clear_cpu_inheritance(gettid(), destination_.c_str());
if (ret != 0)
_E("resource_clear_cpu_inheritance() is failed. error(%d)", ret);
}