aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/user.ex
diff options
context:
space:
mode:
authorrinpatch <rinpatch@sdf.org>2019-01-15 11:56:35 +0300
committerrinpatch <rinpatch@sdf.org>2019-01-15 11:56:35 +0300
commitce15e0659e63217d482ef0448ef7629c76755c46 (patch)
treedc9b3af77c82d2cad68d72b8447283047f53e16b /lib/pleroma/user.ex
parent4656f433f94f132449df019beae1013f71728d0e (diff)
downloadpleroma-ce15e0659e63217d482ef0448ef7629c76755c46.tar.gz
Fix some edge cases [nervous laughter]
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r--lib/pleroma/user.ex15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex
index 26cef53ee..0e828a99e 100644
--- a/lib/pleroma/user.ex
+++ b/lib/pleroma/user.ex
@@ -454,7 +454,20 @@ defmodule Pleroma.User do
end
def get_cached_by_nickname_or_id(nickname_or_id) do
- get_cached_by_id(nickname_or_id) || get_cached_by_nickname(nickname_or_id)
+ try do
+ # TODO: convert to UUIDs when !654 is merged
+ maybe_id = String.to_integer(nickname_or_id)
+ user = get_cached_by_id(maybe_id)
+
+ if user == nil do
+ raise ArgumentError, message: "invalid argument foo"
+ else
+ user
+ end
+ rescue
+ _ in ArgumentError ->
+ get_cached_by_nickname(nickname_or_id)
+ end
end
def get_by_nickname(nickname) do