From: Michael Vogel Date: Tue, 7 Aug 2018 21:03:38 +0000 (+0200) Subject: Fix for duplicated addon entries in the hook table (#5583) X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=9eb2c2ec167176996ef53c3b171014427fe6d364;p=friendica.git Fix for duplicated addon entries in the hook table (#5583) --- diff --git a/src/Core/Addon.php b/src/Core/Addon.php index e4acd6e9d3..4c20c96ad4 100644 --- a/src/Core/Addon.php +++ b/src/Core/Addon.php @@ -139,6 +139,8 @@ class Addon */ public static function registerHook($hook, $file, $function, $priority = 0) { + $file = str_replace(get_app()->get_basepath() . DIRECTORY_SEPARATOR, '', $file); + $condition = ['hook' => $hook, 'file' => $file, 'function' => $function]; $exists = DBA::exists('hook', $condition); if ($exists) { @@ -160,7 +162,13 @@ class Addon */ public static function unregisterHook($hook, $file, $function) { + $relative_file = str_replace(get_app()->get_basepath() . DIRECTORY_SEPARATOR, '', $file); + + // This here is only needed for fixing a problem that existed on the develop branch $condition = ['hook' => $hook, 'file' => $file, 'function' => $function]; + DBA::delete('hook', $condition); + + $condition = ['hook' => $hook, 'file' => $relative_file, 'function' => $function]; $r = DBA::delete('hook', $condition); return $r; }