MDL-71741 portfolio: Reset header information between requests

The reset process also removes the CURLFile option in the HTTP object,
which will avoid the serialisation issue on PHP7.4 and upward
This commit is contained in:
Huong Nguyen 2021-05-28 08:55:43 +07:00
parent 5f91063c91
commit 711d309aa3

View File

@ -235,6 +235,9 @@ class flickr_client extends oauth_helper {
$response = $this->http->post(self::UPLOAD_ROOT, $params);
// Reset http header and options to prepare for the next request.
$this->reset_state();
if ($response) {
$xml = simplexml_load_string($response);
@ -254,4 +257,14 @@ class flickr_client extends oauth_helper {
throw new moodle_exception('flickr_upload_error', 'core_error', '', null, $response);
}
}
/**
* Resets curl state.
*
* @return void
*/
public function reset_state(): void {
$this->http->cleanopt();
$this->http->resetHeader();
}
}