From 4405aaf040b9e1f6974dd3264fadecb5f4f525a3 Mon Sep 17 00:00:00 2001 From: Tim Starling Date: Tue, 24 Apr 2007 18:09:53 +0000 Subject: [PATCH] Use eval "$4" instead of "$@", so that shell metacharacters such as "(" are understood --- bin/ulimit4.sh | 4 ++++ includes/GlobalFunctions.php | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100755 bin/ulimit4.sh diff --git a/bin/ulimit4.sh b/bin/ulimit4.sh new file mode 100755 index 0000000000..2a840d2f7f --- /dev/null +++ b/bin/ulimit4.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +ulimit -t $1 -v $2 -f $3 +eval "$4" diff --git a/includes/GlobalFunctions.php b/includes/GlobalFunctions.php index 291224b832..1ffde741b8 100644 --- a/includes/GlobalFunctions.php +++ b/includes/GlobalFunctions.php @@ -1820,14 +1820,14 @@ function wfShellExec( $cmd, &$retval=null ) { } if ( php_uname( 's' ) == 'Linux' ) { - $time = ini_get( 'max_execution_time' ); + $time = intval( ini_get( 'max_execution_time' ) ); $mem = intval( $wgMaxShellMemory ); $filesize = intval( $wgMaxShellFileSize ); if ( $time > 0 && $mem > 0 ) { - $script = "$IP/bin/ulimit-tvf.sh"; + $script = "$IP/bin/ulimit4.sh"; if ( is_executable( $script ) ) { - $cmd = escapeshellarg( $script ) . " $time $mem $filesize $cmd"; + $cmd = escapeshellarg( $script ) . " $time $mem $filesize " . escapeshellarg( $cmd ); } } } elseif ( php_uname( 's' ) == 'Windows NT' ) { -- 2.20.1