[BrowserKit] Fix cookie path handling when $domain is null
This commit is contained in:
parent
1390529b0f
commit
acc20fc755
@ -43,9 +43,8 @@ class CookieJar
|
|||||||
{
|
{
|
||||||
$this->flushExpiredCookies();
|
$this->flushExpiredCookies();
|
||||||
|
|
||||||
if (!empty($domain)) {
|
|
||||||
foreach ($this->cookieJar as $cookieDomain => $pathCookies) {
|
foreach ($this->cookieJar as $cookieDomain => $pathCookies) {
|
||||||
if ($cookieDomain) {
|
if ($cookieDomain && $domain) {
|
||||||
$cookieDomain = '.'.ltrim($cookieDomain, '.');
|
$cookieDomain = '.'.ltrim($cookieDomain, '.');
|
||||||
if ($cookieDomain !== substr('.'.$domain, -\strlen($cookieDomain))) {
|
if ($cookieDomain !== substr('.'.$domain, -\strlen($cookieDomain))) {
|
||||||
continue;
|
continue;
|
||||||
@ -61,16 +60,6 @@ class CookieJar
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// avoid relying on this behavior that is mainly here for BC reasons
|
|
||||||
foreach ($this->cookieJar as $cookies) {
|
|
||||||
if (isset($cookies[$path][$name])) {
|
|
||||||
return $cookies[$path][$name];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -237,6 +237,8 @@ class CookieJarTest extends TestCase
|
|||||||
$this->assertEquals($cookie1, $cookieJar->get('foo', '/test', 'example.com'));
|
$this->assertEquals($cookie1, $cookieJar->get('foo', '/test', 'example.com'));
|
||||||
$this->assertEquals($cookie2, $cookieJar->get('foo1', '/', 'example.com'));
|
$this->assertEquals($cookie2, $cookieJar->get('foo1', '/', 'example.com'));
|
||||||
$this->assertEquals($cookie2, $cookieJar->get('foo1', '/bar', 'example.com'));
|
$this->assertEquals($cookie2, $cookieJar->get('foo1', '/bar', 'example.com'));
|
||||||
|
|
||||||
|
$this->assertEquals($cookie2, $cookieJar->get('foo1', '/bar'));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testCookieWithWildcardDomain()
|
public function testCookieWithWildcardDomain()
|
||||||
|
Reference in New Issue
Block a user