diff --git a/lib/iex/lib/iex/broker.ex b/lib/iex/lib/iex/broker.ex index 45b657f9f76..e8b766afeef 100644 --- a/lib/iex/lib/iex/broker.ex +++ b/lib/iex/lib/iex/broker.ex @@ -82,7 +82,13 @@ defmodule IEx.Broker do @spec take_over(binary, keyword) :: {:ok, server :: pid, group_leader :: pid} | {:error, :no_iex | :refused} def take_over(identifier, opts) do - GenServer.call(@name, {:take_over, identifier, opts}, :infinity) + case GenServer.whereis(@name) do + nil -> + {:error, :no_iex} + + _pid -> + GenServer.call(@name, {:take_over, identifier, opts}, :infinity) + end end ## Callbacks