summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Harvey <aharvey@php.net>2014-05-22 22:36:55 +0000
committerAdam Harvey <aharvey@php.net>2014-05-22 22:37:08 +0000
commit5d1bfd6fbfbb1474b23b0b58ef81f8396b361fca (patch)
tree5b00f9dadef534ae97235411d0e177ece8ae67f1
parentfdb2709dd27c5987c2d2c8aaf0cdbebf9f17f643 (diff)
downloadphp-git-5d1bfd6fbfbb1474b23b0b58ef81f8396b361fca.tar.gz
Fix run-tests.php with Valgrind >= 3.10.0.
The version test that we had in run-tests.php assumed that the major and minor version numbers were always single digits. This removes that assumption and also uses version_compare() for the comparison instead of naively converting it to an integer.
-rwxr-xr-xrun-tests.php6
1 files changed, 3 insertions, 3 deletions
diff --git a/run-tests.php b/run-tests.php
index 25e480728f..9a5e2766c3 100755
--- a/run-tests.php
+++ b/run-tests.php
@@ -576,8 +576,8 @@ if (isset($argc) && $argc > 1) {
if (!$valgrind_header) {
error("Valgrind returned no version info, cannot proceed.\nPlease check if Valgrind is installed.");
} else {
- $valgrind_version = preg_replace("/valgrind-([0-9])\.([0-9])\.([0-9]+)([.-\w]+)?(\s+)/", '$1$2$3', $valgrind_header, 1, $replace_count);
- if ($replace_count != 1 || !is_numeric($valgrind_version)) {
+ $valgrind_version = preg_replace("/valgrind-(\d+)\.(\d+)\.(\d+)([.\w_-]+)?(\s+)/", '$1.$2.$3', $valgrind_header, 1, $replace_count);
+ if ($replace_count != 1) {
error("Valgrind returned invalid version info (\"$valgrind_header\"), cannot proceed.");
}
$valgrind_header = trim($valgrind_header);
@@ -1777,7 +1777,7 @@ TEST $file
$env['USE_ZEND_ALLOC'] = '0';
$env['ZEND_DONT_UNLOAD_MODULES'] = 1;
- if ($valgrind_version >= 330) {
+ if (version_compare($valgrind_version, '3.3.0', '>=')) {
/* valgrind 3.3.0+ doesn't have --log-file-exactly option */
$cmd = "valgrind -q --tool=memcheck --trace-children=yes --log-file=$memcheck_filename $cmd";
} else {