diff options
author | lain <lain@soykaf.club> | 2018-04-07 16:41:47 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2018-04-07 16:41:47 +0200 |
commit | 8f9bcc4ab0b16efa9168f49f6e2cc14bc424d398 (patch) | |
tree | 220581b9c5d2dd92285943c2b948789b9bf4699c | |
parent | 70bcdf32bdf98c02d9f44c07cbcf74d4c59ed299 (diff) | |
parent | d41bfd1d47587c95450c5953b9fb4374008ecb8c (diff) | |
download | pleroma-8f9bcc4ab0b16efa9168f49f6e2cc14bc424d398.tar.gz |
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop
-rw-r--r-- | lib/pleroma/web/twitter_api/controllers/util_controller.ex | 6 | ||||
-rw-r--r-- | lib/pleroma/web/xml/xml.ex | 18 |
2 files changed, 15 insertions, 9 deletions
diff --git a/lib/pleroma/web/twitter_api/controllers/util_controller.ex b/lib/pleroma/web/twitter_api/controllers/util_controller.ex index 8f452c31c..c7b1a5b95 100644 --- a/lib/pleroma/web/twitter_api/controllers/util_controller.ex +++ b/lib/pleroma/web/twitter_api/controllers/util_controller.ex @@ -182,13 +182,13 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do def follow_import(%{assigns: %{user: user}} = conn, %{"list" => list}) do Task.start(fn -> String.split(list) - |> Enum.map(fn nick -> + |> Enum.map(fn account -> with %User{} = follower <- User.get_cached_by_ap_id(user.ap_id), - %User{} = followed <- User.get_or_fetch_by_nickname(nick), + %User{} = followed <- User.get_or_fetch(account), {:ok, follower} <- User.follow(follower, followed) do ActivityPub.follow(follower, followed) else - _e -> Logger.debug("follow_import: following #{nick} failed") + _e -> Logger.debug("follow_import: following #{account} failed") end end) end) diff --git a/lib/pleroma/web/xml/xml.ex b/lib/pleroma/web/xml/xml.ex index b85712d65..8b609f695 100644 --- a/lib/pleroma/web/xml/xml.ex +++ b/lib/pleroma/web/xml/xml.ex @@ -4,14 +4,20 @@ defmodule Pleroma.Web.XML do def string_from_xpath(_, :error), do: nil def string_from_xpath(xpath, doc) do - {:xmlObj, :string, res} = :xmerl_xpath.string('string(#{xpath})', doc) + try do + {:xmlObj, :string, res} = :xmerl_xpath.string('string(#{xpath})', doc) - res = - res - |> to_string - |> String.trim() + res = + res + |> to_string + |> String.trim() - if res == "", do: nil, else: res + if res == "", do: nil, else: res + catch + e -> + Logger.debug("Couldn't find xpath #{xpath} in XML doc") + nil + end end def parse_document(text) do |