mirror of
https://github.com/php-curl-class/php-curl-class.git
synced 2026-08-30 12:14:36 +00:00
Merge pull request #787 from zachborboa/master
Fix existing header overwritten after using MultiCurl::addCurl()
This commit is contained in:
@@ -863,7 +863,10 @@ class MultiCurl extends BaseCurl
|
||||
$curl->childOfMultiCurl = true;
|
||||
$this->queuedCurls[$curl->id] = $curl;
|
||||
|
||||
$curl->setHeaders($this->headers);
|
||||
// Avoid overwriting any existing header.
|
||||
if ($curl->getOpt(CURLOPT_HTTPHEADER) === null) {
|
||||
$curl->setHeaders($this->headers);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3472,6 +3472,26 @@ class PHPMultiCurlClassTest extends \PHPUnit\Framework\TestCase
|
||||
$this->assertTrue($complete_called);
|
||||
}
|
||||
|
||||
public function testAddCurlHeaders()
|
||||
{
|
||||
$header_fields = [
|
||||
'X-SOME-HEADER: some-value',
|
||||
'X-ANOTHER-HEADER: another-value',
|
||||
];
|
||||
|
||||
$curl = new Curl();
|
||||
$curl->setUrl(Test::TEST_URL);
|
||||
$curl->setOpt(CURLOPT_HTTPHEADER, $header_fields);
|
||||
$curl->setUserAgent('agent');
|
||||
|
||||
$this->assertEquals($header_fields, $curl->getOpt(CURLOPT_HTTPHEADER));
|
||||
|
||||
$multi_curl = new MultiCurl();
|
||||
$multi_curl->addCurl($curl);
|
||||
|
||||
$this->assertEquals($header_fields, $curl->getOpt(CURLOPT_HTTPHEADER));
|
||||
}
|
||||
|
||||
public function testSequentialId()
|
||||
{
|
||||
$multi_curl = new MultiCurl();
|
||||
|
||||
Reference in New Issue
Block a user