logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma
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:

Mlib/pleroma/web/ostatus/ostatus_controller.ex12+++++++-----
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