Fiddle with object destruction and shutdown. Curses upon php 5.2. fixes #3354

git-svn-id: http://svn.automattic.com/wordpress/trunk@4686 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
ryan 2007-01-06 23:36:51 +00:00
parent 7b18a414db
commit 4d2ab530cb
2 changed files with 23 additions and 0 deletions

View File

@ -8,6 +8,8 @@ function wp_cache_add($key, $data, $flag = '', $expire = 0) {
function wp_cache_close() {
global $wp_object_cache;
if ( ! isset($wp_object_cache) )
return;
return $wp_object_cache->save();
}
@ -392,8 +394,14 @@ class WP_Object_Cache {
}
function WP_Object_Cache() {
return $this->__construct();
}
function __construct() {
global $blog_id;
register_shutdown_function(array(&$this, "__destruct"));
if (defined('DISABLE_CACHE'))
return;
@ -428,5 +436,10 @@ class WP_Object_Cache {
$this->blog_id = $this->hash($blog_id);
}
function __destruct() {
$this->save();
return true;
}
}
?>

View File

@ -44,6 +44,12 @@ class wpdb {
* @param string $dbhost
*/
function wpdb($dbuser, $dbpassword, $dbname, $dbhost) {
return $this->__construct($dbuser, $dbpassword, $dbname, $dbhost);
}
function __construct($dbuser, $dbpassword, $dbname, $dbhost) {
register_shutdown_function(array(&$this, "__destruct"));
$this->dbh = @mysql_connect($dbhost, $dbuser, $dbpassword);
if (!$this->dbh) {
$this->bail("
@ -61,6 +67,10 @@ class wpdb {
$this->select($dbname);
}
function __destruct() {
return true;
}
/**
* Selects a database using the current class's $this->dbh
* @param string $db name