From 3aadbaa6c4fe49dba4c3adc9baf0687880a8032b Mon Sep 17 00:00:00 2001 From: Simon Berger Date: Sat, 12 Sep 2020 21:09:20 +0200 Subject: [PATCH] Cleaned up memory_limit set logic --- bin/composer | 48 +++++++++++++++++++++++++----------------------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/bin/composer b/bin/composer index b7ab5318b..8b1184448 100755 --- a/bin/composer +++ b/bin/composer @@ -26,33 +26,35 @@ if (defined('HHVM_VERSION') && version_compare(HHVM_VERSION, '4.0', '>=')) { if (function_exists('ini_set')) { @ini_set('display_errors', 1); - $memoryInBytes = function ($value) { - $unit = strtolower(substr($value, -1, 1)); - $value = (int) $value; - switch($unit) { - case 'g': - $value *= 1024; - // no break (cumulative multiplier) - case 'm': - $value *= 1024; - // no break (cumulative multiplier) - case 'k': - $value *= 1024; - } - - return $value; - }; - - $memoryLimit = trim(ini_get('memory_limit')); - // Increase memory_limit if it is lower than 1.5GB - if ($memoryLimit != -1 && $memoryInBytes($memoryLimit) < 1024 * 1024 * 1536) { - @ini_set('memory_limit', '1536M'); - } // Set user defined memory limit if ($memoryLimit = getenv('COMPOSER_MEMORY_LIMIT')) { @ini_set('memory_limit', $memoryLimit); + } else { + $memoryInBytes = function ($value) { + $unit = strtolower(substr($value, -1, 1)); + $value = (int) $value; + switch($unit) { + case 'g': + $value *= 1024; + // no break (cumulative multiplier) + case 'm': + $value *= 1024; + // no break (cumulative multiplier) + case 'k': + $value *= 1024; + } + + return $value; + }; + + $memoryLimit = trim(ini_get('memory_limit')); + // Increase memory_limit if it is lower than 1.5GB + if ($memoryLimit != -1 && $memoryInBytes($memoryLimit) < 1024 * 1024 * 1536) { + @ini_set('memory_limit', '1536M'); + } + unset($memoryInBytes); } - unset($memoryInBytes, $memoryLimit); + unset($memoryLimit); } putenv('COMPOSER_BINARY='.realpath($_SERVER['argv'][0]));