summaryrefslogtreecommitdiffstats
path: root/system/codeigniter
diff options
context:
space:
mode:
Diffstat (limited to 'system/codeigniter')
-rw-r--r--system/codeigniter/CodeIgniter.php6
-rw-r--r--system/codeigniter/Common.php24
2 files changed, 24 insertions, 6 deletions
diff --git a/system/codeigniter/CodeIgniter.php b/system/codeigniter/CodeIgniter.php
index 68f6c759e..b78736a04 100644
--- a/system/codeigniter/CodeIgniter.php
+++ b/system/codeigniter/CodeIgniter.php
@@ -56,8 +56,8 @@ require(APPPATH.'config/constants'.EXT);
* Define a custom error handler so we can log PHP errors
* ------------------------------------------------------
*/
-set_error_handler('_exception_handler');
-set_magic_quotes_runtime(0); // Kill magic quotes
+//set_error_handler('_exception_handler');
+@set_magic_quotes_runtime(0); // Kill magic quotes
/*
* ------------------------------------------------------
@@ -130,7 +130,7 @@ $LANG =& load_class('Language');
* Note: The Loader class needs to be included first
*
*/
-if (floor(phpversion()) < 5)
+if ( ! is_php(5))
{
load_class('Loader', FALSE);
require(BASEPATH.'codeigniter/Base4'.EXT);
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