bugix: CookieJar returns cookies with domain "domain.com" for domain "foodomain.com"
This commit is contained in:
parent
9016f7dd68
commit
89809541b9
|
@ -195,8 +195,8 @@ class CookieJar
|
||||||
$cookies = array();
|
$cookies = array();
|
||||||
foreach ($this->cookieJar as $domain => $pathCookies) {
|
foreach ($this->cookieJar as $domain => $pathCookies) {
|
||||||
if ($domain) {
|
if ($domain) {
|
||||||
$domain = ltrim($domain, '.');
|
$domain = '.'.ltrim($domain, '.');
|
||||||
if ($domain != substr($parts['host'], -strlen($domain))) {
|
if ($domain != substr('.'.$parts['host'], -strlen($domain))) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -195,4 +195,13 @@ class CookieJarTest extends \PHPUnit_Framework_TestCase
|
||||||
$this->assertEquals(array('foo' => 'bar1'), $cookieJar->allValues('http://foo.example.com/'));
|
$this->assertEquals(array('foo' => 'bar1'), $cookieJar->allValues('http://foo.example.com/'));
|
||||||
$this->assertEquals(array('foo' => 'bar2'), $cookieJar->allValues('http://bar.example.com/'));
|
$this->assertEquals(array('foo' => 'bar2'), $cookieJar->allValues('http://bar.example.com/'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testCookieWithWildcardDomain()
|
||||||
|
{
|
||||||
|
$cookieJar = new CookieJar();
|
||||||
|
$cookieJar->set(new Cookie('foo', 'bar', null, '/', '.example.com'));
|
||||||
|
|
||||||
|
$this->assertEquals(array('foo' => 'bar'), $cookieJar->allValues('http://www.example.com'));
|
||||||
|
$this->assertEmpty($cookieJar->allValues('http://wwwexample.com'));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in New Issue