This avoids runnin into the memory limitation of ulimit.sh when
auto-detecting if programs exist during installation. On my 64 bit
Debian system calling e.g. diff3 --version takes more than the default
10MB memory limit.
Can be reproduced as:
<?php
require 'maintenance/commandLine.inc';
$var = wfShellExec("/usr/bin/diff3 --version 2>&1");
echo "<$var>\n";
?>
Which on my system gives you:
php test.php
/home/avar/g/phase3/bin/ulimit4.sh: xmalloc: ../bash/variables.c:3446: cannot allocate 1270 bytes (53248 bytes allocated)
<>
The old installer just did ``, revert to this behavior until we raise
the default memory limit, or find some workaround for this issue.
return $command;
$file = str_replace( '$1', $command, $versionInfo[0] );
- if ( strstr( wfShellExec( $file ), $versionInfo[1]) !== false )
+ # Should maybe be wfShellExec( $file), but runs into a ulimit, see
+ # http://www.mediawiki.org/w/index.php?title=New-installer_issues&diff=prev&oldid=335456
+ if ( strstr( `$file`, $versionInfo[1]) !== false )
return $command;
}
}