From 5c061bcd3d0a65ef9488e3a00315446043a75fa3 Mon Sep 17 00:00:00 2001 From: Hwankyu Jhun Date: Thu, 21 Sep 2023 17:31:39 +0900 Subject: [PATCH] Fix wrong implmenetation of launchpad library The argc should be the size of the result of Bundle::Export(). Change-Id: Id4ec0eab4bdec0c750ef9553c001e2620703dffa Signed-off-by: Hwankyu Jhun --- src/lib/launchpad/launchpad_loader.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/launchpad/launchpad_loader.cc b/src/lib/launchpad/launchpad_loader.cc index fdf50fd..2f3faa1 100644 --- a/src/lib/launchpad/launchpad_loader.cc +++ b/src/lib/launchpad/launchpad_loader.cc @@ -328,14 +328,14 @@ void LaunchpadLoader::ProcessLaunchRequest(tizen_base::Parcel* parcel) { Util::SetEnvironments(&app_info_); auto exported_args = app_info_.GetBundle().Export(); exported_args[0] = app_info_.GetAppPath(); - app_argc_ = exported_args.size() + 1; - app_argv_ = static_cast(calloc(app_argc_, sizeof(char*))); + app_argc_ = exported_args.size(); + app_argv_ = static_cast(calloc(app_argc_ + 1, sizeof(char*))); if (app_argv_ == nullptr) { _E("calloc() is failed"); exit(-ENOMEM); } - for (int i = 0; i < app_argc_ - 1; ++i) { + for (int i = 0; i < app_argc_; ++i) { app_argv_[i] = strdup(exported_args[i].c_str()); if (app_argv_[i] == nullptr) { _E("strdup() is failed. [%d] %s", i, exported_args[i].c_str()); -- 2.7.4