Modify plugin implementation 45/325245/4
authorHwankyu Jhun <h.jhun@samsung.com>
Thu, 5 Jun 2025 07:21:39 +0000 (16:21 +0900)
committerHwanKyu Jhun <h.jhun@samsung.com>
Mon, 9 Jun 2025 08:08:23 +0000 (08:08 +0000)
- Changes return type of plugins
- Changes symbol name to "TIZEN_ACTION_EXECUTE"

Change-Id: I8465bb8d36c1eedb1a6a988053b400f692654744
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/plugin-daemon/plugin.cc
src/plugin-daemon/plugin.hh

index 6705bf003cd7ce731ec7a34e95ac432829bbf6b6..041a4c373d92ef61ce86a56e7dbe4bc0c6570209 100644 (file)
@@ -14,8 +14,8 @@ Plugin::Plugin(std::string plugin_path) : plugin_path_(std::move(plugin_path)) {
     throw std::runtime_error("Invalid plugin");;
   }
 
-  execute_function_ = reinterpret_cast<const char* (*)(const char*)>(
-      dlsym(handle_, "PLUGIN_EXECUTE"));
+  execute_function_ = reinterpret_cast<char* (*)(const char*)>(
+      dlsym(handle_, "TIZEN_ACTION_EXECUTE"));
   if (execute_function_ == nullptr) {
     LOG(ERROR) << "Failed to find symbol: " << dlerror();
     dlclose(handle_);
@@ -31,11 +31,11 @@ Plugin::~Plugin() {
 }
 
 std::string Plugin::Execute(const std::string& action_model_json) {
-  const char* result_raw = execute_function_(action_model_json.c_str());
+  char* result_raw = execute_function_(action_model_json.c_str());
   if (result_raw == nullptr)
     return "";
 
   std::string result(result_raw);
-  free(const_cast<char*>(result_raw));
+  free(result_raw);
   return result;
 }
index fc4d84d726b7aa09a7a91023ae0deda532752c4d..66ab63fdaa0bc27fec2c4bc4bb707024dae19a21 100644 (file)
@@ -21,7 +21,7 @@
 
 class Plugin {
  public:
-  using PluginExecuteFunction = const char* (*)(const char*);
+  using PluginExecuteFunction = char* (*)(const char*);
   explicit Plugin(std::string plugin_path);
   ~Plugin();
   std::string Execute(const std::string& action_model_json);