* @param $text String: database error message.
*/
function wfLogDBError( $text ) {
- global $wgDBerrorLog, $wgDBerrorLogInUtc;
+ global $wgDBerrorLog, $wgDBerrorLogInUTC;
if ( $wgDBerrorLog ) {
$host = wfHostname();
$wiki = wfWikiID();
- if( $wgDBerrorLogInUtc ) {
+ if( $wgDBerrorLogInUTC ) {
$wikiTimezone = date_default_timezone_get();
date_default_timezone_set( 'UTC' );
}
$date = date( 'D M j G:i:s T Y' );
- if( $wgDBerrorLogInUtc ) {
+ if( $wgDBerrorLogInUTC ) {
// Restore timezone
date_default_timezone_set( $wikiTimezone );
}
* (non-zero is usually failure)
* @param $environ Array optional environment variables which should be
* added to the executed command environment.
+ * @param $limits Array optional array with limits(filesize, memory, time)
+ * this overwrites the global wgShellMax* limits.
* @return string collected stdout as a string (trailing newlines stripped)
*/
-function wfShellExec( $cmd, &$retval = null, $environ = array() ) {
+function wfShellExec( $cmd, &$retval = null, $environ = array(), $limits = array() ) {
global $IP, $wgMaxShellMemory, $wgMaxShellFileSize, $wgMaxShellTime;
static $disabled;
$cmd = $envcmd . $cmd;
if ( php_uname( 's' ) == 'Linux' ) {
- $time = intval( $wgMaxShellTime );
- $mem = intval( $wgMaxShellMemory );
- $filesize = intval( $wgMaxShellFileSize );
+ $time = intval ( isset($limits['time']) ? $limits['time'] : $wgMaxShellTime );
+ $mem = intval ( isset($limits['memory']) ? $limits['memory'] : $wgMaxShellMemory );
+ $filesize = intval ( isset($limits['filesize']) ? $limits['filesize'] : $wgMaxShellFileSize );
if ( $time > 0 && $mem > 0 ) {
$script = "$IP/bin/ulimit4.sh";
* http://bugs.php.net/bug.php?id=33898
*
* PHP's basename() only considers '\' a pathchar on Windows and Netware.
- * We'll consider it so always, as we don't want \s in our Unix paths either.
+ * We'll consider it so always, as we don't want '\s' in our Unix paths either.
*
* @param $path String
* @param $suffix String: to remove if present