From dba61c45e60c88f60b3d315fb083369a7ebaf2b2 Mon Sep 17 00:00:00 2001
From: Angie Byron <webchick@24967.no-reply.drupal.org>
Date: Thu, 28 Jan 2010 13:56:25 +0000
Subject: [PATCH] #599122 follow-up by scor and catch: Do not use
 module_load_include() in global context.

---
 includes/module.inc                   |  4 +++-
 modules/field/field.module            | 12 ++++++------
 modules/field/tests/field_test.module |  6 +++---
 modules/file/file.module              |  6 +++---
 4 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/includes/module.inc b/includes/module.inc
index 25b33011a839..aa031b3ca73a 100644
--- a/includes/module.inc
+++ b/includes/module.inc
@@ -245,7 +245,9 @@ function module_load_install($module) {
  *   module_load_include('inc', 'node', 'content_types');
  * @endcode
  *
- * Do not use this function to load an install file. Use module_load_install()
+ * Do not use this function to load an install file, use module_load_install()
+ * instead. Do not use this function in a global context since it requires
+ * Drupal to be fully bootstrapped, use require_once DRUPAL_ROOT . '/path/file'
  * instead.
  *
  * @param $type
diff --git a/modules/field/field.module b/modules/field/field.module
index 5c209e30062f..a26ae0df34a7 100644
--- a/modules/field/field.module
+++ b/modules/field/field.module
@@ -10,12 +10,12 @@
  * mechanism for auto-loading core APIs, so we have to load them on
  * every page request.
  */
-module_load_include('inc', 'field', 'field.crud');
-module_load_include('inc', 'field', 'field.default');
-module_load_include('inc', 'field', 'field.info');
-module_load_include('inc', 'field', 'field.multilingual');
-module_load_include('inc', 'field', 'field.attach');
-module_load_include('inc', 'field', 'field.form');
+require_once DRUPAL_ROOT . '/modules/field/field.crud.inc';
+require_once DRUPAL_ROOT . '/modules/field/field.default.inc';
+require_once DRUPAL_ROOT . '/modules/field/field.info.inc';
+require_once DRUPAL_ROOT . '/modules/field/field.multilingual.inc';
+require_once DRUPAL_ROOT . '/modules/field/field.attach.inc';
+require_once DRUPAL_ROOT . '/modules/field/field.form.inc';
 
 /**
  * @defgroup field Field API
diff --git a/modules/field/tests/field_test.module b/modules/field/tests/field_test.module
index f7c5396040af..5c8689c2c0f9 100644
--- a/modules/field/tests/field_test.module
+++ b/modules/field/tests/field_test.module
@@ -14,9 +14,9 @@
  * test helper functions
  */
 
-module_load_include('inc', 'field_test', 'field_test.entity');
-module_load_include('inc', 'field_test', 'field_test.field');
-module_load_include('inc', 'field_test', 'field_test.storage');
+require_once DRUPAL_ROOT . '/modules/field/tests/field_test.entity.inc';
+require_once DRUPAL_ROOT . '/modules/field/tests/field_test.field.inc';
+require_once DRUPAL_ROOT . '/modules/field/tests/field_test.storage.inc';
 
 /**
  * Implements hook_permission().
diff --git a/modules/file/file.module b/modules/file/file.module
index bbf98f073549..1b56ea595a86 100644
--- a/modules/file/file.module
+++ b/modules/file/file.module
@@ -6,6 +6,9 @@
  * Defines a "managed_file" Form API field and a "file" field for Field module.
  */
 
+// Load all Field module hooks for File.
+require_once DRUPAL_ROOT . '/modules/file/file.field.inc';
+
 /**
  * Implements hook_help().
  */
@@ -28,9 +31,6 @@ function file_help($path, $arg) {
   }
 }
 
-// Load all Field module hooks for File.
-module_load_include('inc', 'file', 'file.field');
-
 /**
  * Implements hook_menu().
  */
-- 
GitLab