]> git.mxchange.org Git - friendica.git/commitdiff
Semaphore lock deactivated for PHP lower 5.6.1
authorMichael <heluecht@pirati.ca>
Sat, 30 Sep 2017 07:51:09 +0000 (07:51 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 30 Sep 2017 07:51:09 +0000 (07:51 +0000)
include/network.php
src/Util/Lock.php

index 0319468517a3d41204691fa78a7d436fd3dac42f..3e01b53e053458a7cad1fa2e79e88c925ba6be81 100644 (file)
@@ -150,6 +150,10 @@ function z_fetch_url($url, $binary = false, &$redirects = 0, $opts = array()) {
                }
        }
 
+       if (Config::get('system', 'ipv4_resolve', false)) {
+               curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
+       }
+
        if ($binary) {
                @curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
        }
@@ -278,6 +282,10 @@ function post_url($url, $params, $headers = null, &$redirects = 0, $timeout = 0)
        curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        curl_setopt($ch, CURLOPT_USERAGENT, $a->get_useragent());
 
+       if (Config::get('system', 'ipv4_resolve', false)) {
+               curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
+       }
+
        if (intval($timeout)) {
                curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
        } else {
index 93c6d3510099ab18aea9ac56620a90a115983f99..8cd38066d1ea7889dc26332e794d97e0394a987f 100644 (file)
@@ -76,7 +76,8 @@ class Lock {
                $got_lock = false;
                $start = time();
 
-               if (function_exists('sem_get')) {
+               // The second parameter for "sem_acquire" doesn't exist before 5.6.1
+               if (function_exists('sem_get') && version_compare(PHP_VERSION, '5.6.1', '>=')) {
                        self::$semaphore[$fn_name] = sem_get(self::semaphoreKey($fn_name));
                        if (self::$semaphore[$fn_name]) {
                                return sem_acquire(self::$semaphore[$fn_name], ($timeout == 0));
@@ -156,7 +157,7 @@ class Lock {
         * @param string $fn_name Name of the lock
         */
        public static function remove($fn_name) {
-               if (function_exists('sem_get')) {
+               if (function_exists('sem_get') && version_compare(PHP_VERSION, '5.6.1', '>=')) {
                        if (empty(self::$semaphore[$fn_name])) {
                                return false;
                        } else {