Dialyzer: fix pattern matches preventing video thumbnailing from working
lib/pleroma/web/media_proxy/media_proxy_controller.ex:154:pattern_match The pattern can never match the type. Pattern: {:ok, _thumbnail_binary} Type: {:error, boolean() | {:ffmpeg, :command_not_found}}
This commit is contained in:
parent
18835bf701
commit
17ebb2df84
|
@ -0,0 +1 @@
|
||||||
|
Video thumbnails were not being generated due to a negative cache lookup logic error
|
|
@ -45,7 +45,7 @@ def image_resize(url, options) do
|
||||||
@spec video_framegrab(String.t()) :: {:ok, binary()} | {:error, any()}
|
@spec video_framegrab(String.t()) :: {:ok, binary()} | {:error, any()}
|
||||||
def video_framegrab(url) do
|
def video_framegrab(url) do
|
||||||
with executable when is_binary(executable) <- System.find_executable("ffmpeg"),
|
with executable when is_binary(executable) <- System.find_executable("ffmpeg"),
|
||||||
false <- @cachex.exists?(:failed_media_helper_cache, url),
|
{:ok, false} <- @cachex.exists?(:failed_media_helper_cache, url),
|
||||||
{:ok, env} <- HTTP.get(url, [], http_client_opts()),
|
{:ok, env} <- HTTP.get(url, [], http_client_opts()),
|
||||||
{:ok, pid} <- StringIO.open(env.body) do
|
{:ok, pid} <- StringIO.open(env.body) do
|
||||||
body_stream = IO.binstream(pid, 1)
|
body_stream = IO.binstream(pid, 1)
|
||||||
|
@ -71,13 +71,13 @@ def video_framegrab(url) do
|
||||||
end)
|
end)
|
||||||
|
|
||||||
case Task.yield(task, 5_000) do
|
case Task.yield(task, 5_000) do
|
||||||
nil ->
|
{:ok, result} ->
|
||||||
|
{:ok, result}
|
||||||
|
|
||||||
|
_ ->
|
||||||
Task.shutdown(task)
|
Task.shutdown(task)
|
||||||
@cachex.put(:failed_media_helper_cache, url, nil)
|
@cachex.put(:failed_media_helper_cache, url, nil)
|
||||||
{:error, {:ffmpeg, :timeout}}
|
{:error, {:ffmpeg, :timeout}}
|
||||||
|
|
||||||
result ->
|
|
||||||
{:ok, result}
|
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
nil -> {:error, {:ffmpeg, :command_not_found}}
|
nil -> {:error, {:ffmpeg, :command_not_found}}
|
||||||
|
|
Loading…
Reference in New Issue