summaryrefslogtreecommitdiffstats
path: root/system/codeigniter/Common.php
diff options
context:
space:
mode:
Diffstat (limited to 'system/codeigniter/Common.php')
-rw-r--r--system/codeigniter/Common.php24
1 files changed, 21 insertions, 3 deletions
diff --git a/system/codeigniter/Common.php b/system/codeigniter/Common.php
index f45c85c26..1ffed6a0c 100644
--- a/system/codeigniter/Common.php
+++ b/system/codeigniter/Common.php
@@ -150,17 +150,35 @@ function &load_class($class, $instantiate = TRUE)
if ($is_subclass == TRUE)
{
$name = config_item('subclass_prefix').$class;
- $objects[$class] =& new $name();
+
+ $objects[$class] =& instantiate_class(new $name());
return $objects[$class];
}
$name = ($class != 'Controller') ? 'CI_'.$class : $class;
-
- $objects[$class] =& new $name();
+
+ $objects[$class] =& instantiate_class(new $name());
return $objects[$class];
}
/**
+ * Instantiate Class
+ *
+ * Returns a new class object by reference, used by load_class() and the DB class.
+ * Required to retain PHP 4 compatibility and also not make PHP 5.3 cry.
+ *
+ * Use: $obj =& instantiate_class(new Foo());
+ *
+ * @access public
+ * @param object
+ * @return object
+ */
+function &instantiate_class(&$class_object)
+{
+ return $class_object;
+}
+
+/**
* Loads the main config.php file
*
* @access private