"fixed problem reported on some installs with api >= r25860:

PHP Fatal error:  egw_db::connect(): The script tried to execute a method or access a property of an incomplete object ...
Problem was that session restore is now used regardless if it's explicitly switched on, egw_db::connect() only registered the required class, if it was explicitly switched on. Therefore it worked everywhere, where session restore was configured before, but failed everyone not used it before ;-)"
This commit is contained in:
Ralf Becker 2008-08-13 05:20:23 +00:00
parent c7494f1e70
commit b63928d7f0

View File

@ -458,13 +458,14 @@ class egw_db
// next ADOdb version: if (!$this->Link_ID->isConnected()) $this->Link_ID->Connect(); // next ADOdb version: if (!$this->Link_ID->isConnected()) $this->Link_ID->Connect();
if (!$this->Link_ID->_connectionID) $this->Link_ID->Connect(); if (!$this->Link_ID->_connectionID) $this->Link_ID->Connect();
if ($new_connection && $GLOBALS['egw_info']['server']['sessions_type'] == 'php4-restore') if ($new_connection)
{ {
foreach(get_included_files() as $file) foreach(get_included_files() as $file)
{ {
if (strpos($file,'adodb') !== false && !in_array($file,(array)$_SESSION['egw_required_files'])) if (strpos($file,'adodb') !== false && !in_array($file,(array)$_SESSION['egw_required_files']))
{ {
$_SESSION['egw_required_files'][] = $file; $_SESSION['egw_required_files'][] = $file;
//error_log(__METHOD__."() egw_required_files[] = $file");
} }
} }
} }