From 3fc36563b1ae228e26979751439a6a069e078136 Mon Sep 17 00:00:00 2001 From: vpeter4 Date: Thu, 27 Dec 2018 16:59:29 +0100 Subject: [PATCH] kodi: service addon wrapper call fix Currently when addon is installed it's service is enabled and started. But immediately service is stopped, disabled, enabled and started again. This second part should be executed only on addon's update. --- ...100.09-use-a-wrapper-to-setup-service-addons.patch | 11 ++++++----- .../mediacenter/kodi/scripts/service-addon-wrapper | 6 +++--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/mediacenter/kodi/patches/kodi-100.09-use-a-wrapper-to-setup-service-addons.patch b/packages/mediacenter/kodi/patches/kodi-100.09-use-a-wrapper-to-setup-service-addons.patch index 3f28a51f69..40700f85b2 100644 --- a/packages/mediacenter/kodi/patches/kodi-100.09-use-a-wrapper-to-setup-service-addons.patch +++ b/packages/mediacenter/kodi/patches/kodi-100.09-use-a-wrapper-to-setup-service-addons.patch @@ -19,8 +19,8 @@ index 8343101b96..8130d99b83 100644 + case LE_ADDON_DISABLED: + contextStr = "disable"; + break; -+ case LE_ADDON_POST_INSTALL: -+ contextStr = "post-install"; ++ case LE_ADDON_POST_UPDATE: ++ contextStr = "post-update"; + break; + case LE_ADDON_PRE_UNINSTALL: + contextStr = "pre-uninstall"; @@ -40,12 +40,13 @@ index 8343101b96..8130d99b83 100644 void OnPreInstall(const AddonPtr& addon) { //Fallback to the pre-install callback in the addon. -@@ -426,6 +457,8 @@ void OnPostInstall(const AddonPtr& addon, bool update, bool modal) +@@ -426,6 +457,9 @@ void OnPostInstall(const AddonPtr& addon, bool update, bool modal) } closedir(addonsDir); } + -+ LEAddonHook(addon, LE_ADDON_POST_INSTALL); ++ if (update) ++ LEAddonHook(addon, LE_ADDON_POST_UPDATE); // OE addon->OnPostInstall(update, modal); @@ -69,7 +70,7 @@ index b877839848..f7c0b717f6 100644 +typedef enum { + LE_ADDON_ENABLED, + LE_ADDON_DISABLED, -+ LE_ADDON_POST_INSTALL, ++ LE_ADDON_POST_UPDATE, + LE_ADDON_PRE_UNINSTALL, +} LE_ADDON_CONTEXT; + diff --git a/packages/mediacenter/kodi/scripts/service-addon-wrapper b/packages/mediacenter/kodi/scripts/service-addon-wrapper index 6149f4f795..78fd08c1a2 100755 --- a/packages/mediacenter/kodi/scripts/service-addon-wrapper +++ b/packages/mediacenter/kodi/scripts/service-addon-wrapper @@ -29,8 +29,8 @@ if [ -f "${SERVICE_FILE}" ] ; then systemctl stop "${ADDON_ID}.service" systemctl disable "${ADDON_ID}.service" ;; - post-install) - # post-install is triggered on update as well, + post-update) + # post-update is triggered on update, # make sure to stop and re-install service systemctl stop "${ADDON_ID}.service" systemctl disable "${ADDON_ID}.service" @@ -77,7 +77,7 @@ if [ -d "${OVERLAY_PATH}" ] ; then OVERLAY_CONF="/storage/.cache/kernel-overlays/50-${ADDON_ID}.conf" case "${CONTEXT}" in - enable | post-install ) + enable | post-update ) create_overlay_conf ;; disable | pre-uninstall )