diff options
author | Lain Soykaf <lain@lain.com> | 2025-01-30 12:18:20 +0400 |
---|---|---|
committer | Lain Soykaf <lain@lain.com> | 2025-01-30 12:18:20 +0400 |
commit | 81ab906466f8e46ac2a16011faa8d0c2bd009957 (patch) | |
tree | 4d8205d7230d4f94ef36929c1cb0c36736777204 /lib | |
parent | 011d70df792fff9ecae8cc92728b45c026fe9be3 (diff) | |
download | pleroma-81ab906466f8e46ac2a16011faa8d0c2bd009957.tar.gz pleroma-81ab906466f8e46ac2a16011faa8d0c2bd009957.zip |
AnalyzeMetadata: Don't crash on grayscale image blurhash
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/upload/filter/analyze_metadata.ex | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/pleroma/upload/filter/analyze_metadata.ex b/lib/pleroma/upload/filter/analyze_metadata.ex index 7ee643277..a8480bf36 100644 --- a/lib/pleroma/upload/filter/analyze_metadata.ex +++ b/lib/pleroma/upload/filter/analyze_metadata.ex @@ -90,9 +90,13 @@ defmodule Pleroma.Upload.Filter.AnalyzeMetadata do {:ok, rgb} = if Image.has_alpha?(resized_image) do # remove alpha channel - resized_image - |> Operation.extract_band!(0, n: 3) - |> Image.write_to_binary() + case Operation.extract_band(resized_image, 0, n: 3) do + {:ok, data} -> + Image.write_to_binary(data) + + _ -> + Image.write_to_binary(resized_image) + end else Image.write_to_binary(resized_image) end |