summaryrefslogtreecommitdiffstats
path: root/system
diff options
context:
space:
mode:
Diffstat (limited to 'system')
-rw-r--r--system/libraries/Xmlrpcs.php24
1 files changed, 18 insertions, 6 deletions
diff --git a/system/libraries/Xmlrpcs.php b/system/libraries/Xmlrpcs.php
index 1b2ffca05..7a4bc825e 100644
--- a/system/libraries/Xmlrpcs.php
+++ b/system/libraries/Xmlrpcs.php
@@ -41,7 +41,9 @@ class CI_Xmlrpcs extends CI_Xmlrpc
var $system_methods = array(); // XML RPC Server methods
var $controller_obj;
-
+ var $object = FALSE;
+
+
//-------------------------------------
// Constructor, more or less
//-------------------------------------
@@ -74,6 +76,11 @@ class CI_Xmlrpcs extends CI_Xmlrpc
{
$this->debug = $config['debug'];
}
+
+ if (isset($config['object']) && is_object($config['object']))
+ {
+ $this->object = $config['object'];
+ }
}
//-------------------------------------
@@ -320,11 +327,16 @@ class CI_Xmlrpcs extends CI_Xmlrpc
}
else
{
- $CI =& get_instance();
- return $CI->$method_parts['1']($m);
- //$class = new $method_parts['0'];
- //return $class->$method_parts['1']($m);
- //return call_user_func(array(&$method_parts['0'],$method_parts['1']), $m);
+ if ($this->object === FALSE)
+ {
+ $CI =& get_instance();
+ return $CI->$method_parts['1']($m);
+ }
+ else
+ {
+ return $this->object->$method_parts['1']($m);
+ //return call_user_func(array(&$method_parts['0'],$method_parts['1']), $m);
+ }
}
}
else