diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-08-03 17:46:01 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-08-03 17:46:01 +0200 |
commit | 11714fbaa2b90e1fc577d2b9b3d4075a44181633 (patch) | |
tree | 9b13d11c1ff4d3fd86721349e7e454de579839b8 /lib | |
parent | 7b0dd964bee2974e97280aceedae95c4dbc7b3c9 (diff) | |
download | pleroma-11714fbaa2b90e1fc577d2b9b3d4075a44181633.tar.gz |
Better error handling for user feeds.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/ostatus/ostatus_controller.ex | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/pleroma/web/ostatus/ostatus_controller.ex b/lib/pleroma/web/ostatus/ostatus_controller.ex index 05acfd04b..a2c2a4b4c 100644 --- 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 |