Browse Source

fallback can't have pack.json, reflect that in code

having pacj.json and sha256 in a fallback pack would cause a circular dependency of itself
object-id-column
Ekaterina Vaartis 4 years ago
parent
commit
b78973d27f
1 changed files with 5 additions and 5 deletions
  1. +5
    -5
      lib/pleroma/web/emoji_api/emoji_api_controller.ex

+ 5
- 5
lib/pleroma/web/emoji_api/emoji_api_controller.ex View File

@@ -184,19 +184,19 @@ keeping it in cache for #{div(cache_ms, 1000)}s")
pack_dir = Path.join(@emoji_dir_path, local_name)
File.mkdir_p!(pack_dir)

# Fallback cannot contain a pack.json file
files =
['pack.json'] ++
unless(pinfo[:fallback], do: ['pack.json'], else: []) ++
(pfiles |> Enum.map(fn {_, path} -> to_charlist(path) end))

{:ok, _} = :zip.unzip(emoji_archive, cwd: to_charlist(pack_dir), file_list: files)

# Fallback URL might not contain a pack.json file. Put on we have if there's none
# Fallback can't contain a pack.json file, since that would cause the fallback-src-sha256
# in it to depend on itself
if pinfo[:fallback] do
pack_file_path = Path.join(pack_dir, "pack.json")

unless File.exists?(pack_file_path) do
File.write!(pack_file_path, Jason.encode!(full_pack))
end
File.write!(pack_file_path, Jason.encode!(full_pack))
end

conn |> text("ok")


Loading…
Cancel
Save