defmodule Image.Application do # This env var, if set, will prevent `libvips` # from loading untrusted loaders. We set this to # true if it is not otherwise set. # See https://github.com/kipcole9/image/issues/9 @untrusted_env_var "VIPS_BLOCK_UNTRUSTED" use Application def start(_type, _args) do GenServer.start_link(Image.SetSafeLoader, @untrusted_env_var, name: :check_safe_image_loading) end end defmodule Image.SetSafeLoader do use GenServer def init(env_var) do unless System.get_env(env_var) do System.put_env(env_var, "TRUE") end {:ok, env_var} end end