From 98b8b9f828e30d4bbc280c6c5366790353ec0b4f Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 28 Nov 2024 20:11:36 +0100 Subject: Fix API use rawurldecode (#7033) Labels or categories containing a `+` were failing. And avoid returning everything if the label/category filter is not found. Compatibility with FocusReader --- p/api/greader.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/p/api/greader.php b/p/api/greader.php index 218db7561..4f288bb03 100644 --- a/p/api/greader.php +++ b/p/api/greader.php @@ -596,7 +596,6 @@ final class GReaderAPI { $streamId = htmlspecialchars((string)$streamId, ENT_COMPAT, 'UTF-8'); $cat = $categoryDAO->searchByName($streamId); if ($cat != null) { - $type = 'c'; $streamId = $cat->id(); } else { $tagDAO = FreshRSS_Factory::createTagDao(); @@ -605,7 +604,6 @@ final class GReaderAPI { $type = 't'; $streamId = $tag->id(); } else { - $type = 'A'; $streamId = -1; } } @@ -970,7 +968,7 @@ final class GReaderAPI { } else { $pathInfo = $_SERVER['PATH_INFO']; } - $pathInfo = urldecode($pathInfo); + $pathInfo = rawurldecode($pathInfo); $pathInfo = '' . preg_replace('%^(/api)?(/greader\.php)?%', '', $pathInfo); //Discard common errors if ($pathInfo == '' && empty($_SERVER['QUERY_STRING'])) { exit('OK'); -- cgit v1.2.3