From 8d472a5d78634aa4c5d2d70c1a6e495fe9f536e1 Mon Sep 17 00:00:00 2001 From: Mischa ter Smitten Date: Tue, 12 Jan 2016 21:01:14 +0100 Subject: [PATCH] Memcached can not connect using a socket Fixes #8018 --- lib/Cake/Cache/Engine/MemcachedEngine.php | 5 +++-- lib/Cake/Test/Case/Cache/Engine/MemcachedEngineTest.php | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/Cake/Cache/Engine/MemcachedEngine.php b/lib/Cake/Cache/Engine/MemcachedEngine.php index 331b8a352ac..d14b5344f9d 100644 --- a/lib/Cake/Cache/Engine/MemcachedEngine.php +++ b/lib/Cake/Cache/Engine/MemcachedEngine.php @@ -185,8 +185,9 @@ protected function _setOptions() { * @return array Array containing host, port */ protected function _parseServerString($server) { - if (strpos($server, 'unix://') === 0) { - return array($server, 0); + $socketTransport = 'unix://'; + if (strpos($server, $socketTransport) === 0) { + return array(substr($server, strlen($socketTransport)), 0); } if (substr($server, 0, 1) === '[') { $position = strpos($server, ']:'); diff --git a/lib/Cake/Test/Case/Cache/Engine/MemcachedEngineTest.php b/lib/Cake/Test/Case/Cache/Engine/MemcachedEngineTest.php index 17f1f99727d..823c67f44e1 100644 --- a/lib/Cake/Test/Case/Cache/Engine/MemcachedEngineTest.php +++ b/lib/Cake/Test/Case/Cache/Engine/MemcachedEngineTest.php @@ -433,7 +433,7 @@ public function testParseServerStringNonLatin() { public function testParseServerStringUnix() { $Memcached = new TestMemcachedEngine(); $result = $Memcached->parseServerString('unix:///path/to/memcachedd.sock'); - $this->assertEquals(array('unix:///path/to/memcachedd.sock', 0), $result); + $this->assertEquals(array('/path/to/memcachedd.sock', 0), $result); } /**