diff --git a/lib/livebook_web/live/session_live/cell_upload_component.ex b/lib/livebook_web/live/session_live/cell_upload_component.ex index f41d42ed2..320b32a8f 100644 --- a/lib/livebook_web/live/session_live/cell_upload_component.ex +++ b/lib/livebook_web/live/session_live/cell_upload_component.ex @@ -82,13 +82,16 @@ defmodule LivebookWeb.SessionLive.CellUploadComponent do filename = name <> ext destination_file = FileSystem.File.resolve(images_dir, filename) - with :ok <- FileSystem.File.copy(upload_file, destination_file) do - {:ok, filename} - end + result = + with :ok <- FileSystem.File.copy(upload_file, destination_file) do + {:ok, filename} + end + + {:ok, result} end) |> case do [{:ok, filename}] -> - src_path = "images/#{filename}" + src_path = "images/#{URI.encode(filename, &URI.char_unreserved?/1)}" {:noreply, socket