From c1fb8e2eb62e7e0802617ccc43ae738e61281dcf Mon Sep 17 00:00:00 2001
From: Dave Reid <dave@davereid.net>
Date: Mon, 19 Dec 2011 10:34:25 -0600
Subject: [PATCH] Issue #1139676 by Dave Reid, cosmicdreams: Fixed
 feeds_alter() doesn't support modulename.feeds.inc files supported by
 feeds_hook_info().

---
 feeds.module | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/feeds.module b/feeds.module
index 543b24a0..827262a1 100644
--- a/feeds.module
+++ b/feeds.module
@@ -943,6 +943,8 @@ function feeds_library_exists($file, $library) {
  * - None of that 'multiple parameters by ref' crazyness.
  * - Don't use module_implements() to allow hot including on behalf
  *   implementations (see mappers/).
+ *
+ * @todo This needs to be removed and drupal_alter() used. This is crazy dumb.
  */
 function feeds_alter($type, &$data) {
   $args = array(&$data);
@@ -951,10 +953,10 @@ function feeds_alter($type, &$data) {
   array_shift($additional_args);
   $args = array_merge($args, $additional_args);
 
+  $hook = $type . '_alter';
   foreach (module_list() as $module) {
-    $function = "{$module}_{$type}_alter";
-    if (function_exists($function)) {
-      call_user_func_array($function, $args);
+    if (module_hook($module, $hook)) {
+      call_user_func_array($module . '_' . $hook, $args);
     }
   }
 }
-- 
GitLab