X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Flibs%2Fobjectcache%2FMemcachedPeclBagOStuff.php;h=fe31c258b2a8e6c2295ce3c0ed7293cc82a82e57;hb=138298b397b308ad6e4bfc7088884d90e8ac1e37;hp=e3e66d582617f310f6e54f82d09700e5e0d7dc63;hpb=4a5f646a7fea7cbe0421c5cf38b72bae5c1bcf65;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/libs/objectcache/MemcachedPeclBagOStuff.php b/includes/libs/objectcache/MemcachedPeclBagOStuff.php index e3e66d5826..fe31c258b2 100644 --- a/includes/libs/objectcache/MemcachedPeclBagOStuff.php +++ b/includes/libs/objectcache/MemcachedPeclBagOStuff.php @@ -140,7 +140,19 @@ class MemcachedPeclBagOStuff extends MemcachedBagOStuff { protected function getWithToken( $key, &$casToken, $flags = 0 ) { $this->debugLog( "get($key)" ); - $result = $this->client->get( $this->validateKeyEncoding( $key ), null, $casToken ); + if ( defined( Memcached::class . '::GET_EXTENDED' ) ) { // v3.0.0 + $flags = Memcached::GET_EXTENDED; + $res = $this->client->get( $this->validateKeyEncoding( $key ), null, $flags ); + if ( is_array( $res ) ) { + $result = $res['value']; + $casToken = $res['cas']; + } else { + $result = false; + $casToken = null; + } + } else { + $result = $this->client->get( $this->validateKeyEncoding( $key ), null, $casToken ); + } $result = $this->checkResult( $key, $result ); return $result; }