commit: 11714fbaa2b90e1fc577d2b9b3d4075a44181633
parent: 7b0dd964bee2974e97280aceedae95c4dbc7b3c9
Author: Roger Braun <roger@rogerbraun.net>
Date: Thu, 3 Aug 2017 17:46:01 +0200
Better error handling for user feeds.
Diffstat:
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/lib/pleroma/web/ostatus/ostatus_controller.ex b/lib/pleroma/web/ostatus/ostatus_controller.ex
@@ -8,11 +8,13 @@ defmodule Pleroma.Web.OStatus.OStatusController do
import Ecto.Query
def feed_redirect(conn, %{"nickname" => nickname}) do
- user = User.get_cached_by_nickname(nickname)
-
- case get_format(conn) do
- "html" -> Fallback.RedirectController.redirector(conn, nil)
- _ -> redirect conn, external: OStatus.feed_path(user)
+ with %User{} = user <- User.get_cached_by_nickname(nickname) do
+ case get_format(conn) do
+ "html" -> Fallback.RedirectController.redirector(conn, nil)
+ _ -> redirect conn, external: OStatus.feed_path(user)
+ end
+ else
+ _e -> send_resp(conn, 404, "No user found")
end
end