|
@@ -124,6 +124,10 @@ function smf_db_replacement__callback($matches)
|
|
|
global $db_callback, $user_info, $db_prefix;
|
|
|
|
|
|
list ($values, $connection) = $db_callback;
|
|
|
+
|
|
|
+ // Connection gone??? This should *never* happen at this point, yet it does :'(
|
|
|
+ if (!is_resource($connection))
|
|
|
+ display_db_error();
|
|
|
|
|
|
if ($matches[1] === 'db_prefix')
|
|
|
return $db_prefix;
|
|
@@ -321,8 +325,8 @@ function smf_db_query($identifier, $db_string, $db_values = array(), $connection
|
|
|
$_SESSION['debug_redirect'] = array();
|
|
|
}
|
|
|
|
|
|
- $st = microtime();
|
|
|
// Don't overload it.
|
|
|
+ $st = microtime();
|
|
|
$db_cache[$db_count]['q'] = $db_count < 50 ? $db_string : '...';
|
|
|
$db_cache[$db_count]['f'] = $file;
|
|
|
$db_cache[$db_count]['l'] = $line;
|
|
@@ -386,6 +390,7 @@ function smf_db_query($identifier, $db_string, $db_values = array(), $connection
|
|
|
$ret = @mysql_query($db_string, $connection);
|
|
|
else
|
|
|
$ret = @mysql_unbuffered_query($db_string, $connection);
|
|
|
+
|
|
|
if ($ret === false && empty($db_values['db_error_skip']))
|
|
|
$ret = smf_db_error($db_string, $connection);
|
|
|
|