aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/gopher/server.ex
diff options
context:
space:
mode:
authorhref <href@random.sh>2018-11-19 20:58:12 +0100
committerhref <href@random.sh>2018-11-30 18:31:15 +0100
commit1d94c8f0f0fe1e3b1ea52ce773e86ba096641e05 (patch)
treee5baee131394b7f08cc98570db1c933a03ce48a2 /lib/pleroma/gopher/server.ex
parent52ce368562de919f1806dfd5235642caf0666e16 (diff)
downloadpleroma-1d94c8f0f0fe1e3b1ea52ce773e86ba096641e05.tar.gz
Fix supervisor order
This starts `Pleroma.Web.Endpoint` after all other processes and may avoid some weird bugs (especially at start/restart). Also properly ignores starting the gopher's gen_server if disabled.
Diffstat (limited to 'lib/pleroma/gopher/server.ex')
-rw-r--r--lib/pleroma/gopher/server.ex35
1 files changed, 18 insertions, 17 deletions
diff --git a/lib/pleroma/gopher/server.ex b/lib/pleroma/gopher/server.ex
index e6361a82c..3b0569a99 100644
--- a/lib/pleroma/gopher/server.ex
+++ b/lib/pleroma/gopher/server.ex
@@ -6,28 +6,29 @@ defmodule Pleroma.Gopher.Server do
config = Pleroma.Config.get(:gopher, [])
ip = Keyword.get(config, :ip, {0, 0, 0, 0})
port = Keyword.get(config, :port, 1234)
- GenServer.start_link(__MODULE__, [ip, port], [])
- end
- def init([ip, port]) do
- if Pleroma.Config.get([:gopher, :enabled], false) do
- Logger.info("Starting gopher server on #{port}")
-
- :ranch.start_listener(
- :gopher,
- 100,
- :ranch_tcp,
- [port: port],
- __MODULE__.ProtocolHandler,
- []
- )
-
- {:ok, %{ip: ip, port: port}}
+ if Keyword.get(config, :enabled, false) do
+ GenServer.start_link(__MODULE__, [ip, port], [])
else
Logger.info("Gopher server disabled")
- {:ok, nil}
+ :ignore
end
end
+
+ def init([ip, port]) do
+ Logger.info("Starting gopher server on #{port}")
+
+ :ranch.start_listener(
+ :gopher,
+ 100,
+ :ranch_tcp,
+ [port: port],
+ __MODULE__.ProtocolHandler,
+ []
+ )
+
+ {:ok, %{ip: ip, port: port}}
+ end
end
defmodule Pleroma.Gopher.Server.ProtocolHandler do