SimplePie: Fix propagation of HTTP error codes (#7670)

* SimplePie: Fix propagation of HTTP error codes
fix https://github.com/FreshRSS/FreshRSS/issues/7038
https://github.com/FreshRSS/simplepie/pull/36
upstream https://github.com/simplepie/simplepie/pull/905

Co-authored-by: Edgar Alvarado <15692727+pe1uca@users.noreply.github.com>
This commit is contained in:
Alexandre Alapetite
2025-06-15 21:25:03 +02:00
committed by GitHub
parent 67c42b0e7c
commit b418b83bd4
3 changed files with 4 additions and 3 deletions

View File

@@ -14,7 +14,7 @@
"marienfressinaud/lib_opml": "0.5.1",
"phpgt/cssxpath": "v1.3.0",
"phpmailer/phpmailer": "6.10.0",
"simplepie/simplepie": "dev-freshrss#2e668d7b1bc2787310b99d2fd59bfda96e31b6ae"
"simplepie/simplepie": "dev-freshrss#9a1c69be7d9dc2b766cef8697a2f1e88ab9a64e5"
},
"config": {
"sort-packages": true,

View File

@@ -70,7 +70,7 @@ final class FileClient implements Client
}
if (!$file->success) {
throw new HttpException($file->error);
throw new HttpException($file->error, $file->get_status_code()); // FreshRSS https://github.com/simplepie/simplepie/pull/905
}
return $file;

View File

@@ -1999,7 +1999,7 @@ class SimplePie
$this->status_code = $file->get_status_code();
} catch (HttpException $th) {
$this->check_modified = false;
$this->status_code = 0;
$this->status_code = $th->getCode(); // FreshRSS https://github.com/simplepie/simplepie/pull/905
if ($this->force_cache_fallback) {
$this->data['cache_expiration_time'] = \SimplePie\HTTP\Utils::negociate_cache_expiration_time($this->data['headers'] ?? [], $this->cache_duration, $this->cache_duration_min, $this->cache_duration_max); // FreshRSS
@@ -2093,6 +2093,7 @@ class SimplePie
} catch (HttpException $th) {
// If the file connection has an error, set SimplePie::error to that and quit
$this->error = $th->getMessage();
$this->status_code = $th->getCode(); // FreshRSS https://github.com/simplepie/simplepie/pull/905
return !empty($this->data);
}