Просмотр исходного кода

#1125 BxDolStudioToolsAudit.php file_get_contents() to php.net can hang forever

Alex Trofimov 8 лет назад
Родитель
Сommit
e9f5ebe3b4
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      studio/classes/BxDolStudioToolsAudit.php

+ 3 - 2
studio/classes/BxDolStudioToolsAudit.php

@@ -239,8 +239,9 @@ class BxDolStudioToolsAudit extends BxDol
 
     protected function requirementsPHP($bEcho = true, &$aOutputMessages = null)
     {
-        $a = unserialize(file_get_contents("http://www.php.net/releases/index.php?serialize=1"));
-        $sLatestPhpVersion = $a[5]['version'];
+        $sHttpCode = null; 
+        $s = bx_file_get_contents('http://php.net/releases/index.php?serialize=1', array(), 'get', array(), $sHttpCode, array(), 20, array(CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4));
+        $sLatestPhpVersion = $s && ($a = unserialize($s)) ? $a[5]['version'] : '';
 
         if (version_compare(phpversion(), "5.4", ">=") == 1)
             unset($this->aPhpSettings['short_open_tag']);