From ec51ac654f26c6e258dc686ba0c1ee27b902db88 Mon Sep 17 00:00:00 2001 From: Martin Varga Date: Tue, 13 May 2025 08:13:19 +0200 Subject: [PATCH] Fix get_x_accel uri for absolute paths --- server/mergin/sync/utils.py | 1 + server/mergin/tests/test_utils.py | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/server/mergin/sync/utils.py b/server/mergin/sync/utils.py index 48fab72a..c4d5fa16 100644 --- a/server/mergin/sync/utils.py +++ b/server/mergin/sync/utils.py @@ -575,5 +575,6 @@ def get_x_accel_uri(*url_parts): # if the path parts_join starts with local_projects, remove it if url.startswith(local_projects): url = os.path.relpath(url, local_projects) + url = url.lstrip(os.path.sep) result = os.path.join(download_accell_uri, url) return result diff --git a/server/mergin/tests/test_utils.py b/server/mergin/tests/test_utils.py index f3249daa..3859f0bf 100644 --- a/server/mergin/tests/test_utils.py +++ b/server/mergin/tests/test_utils.py @@ -270,3 +270,9 @@ def test_get_x_accell_uri(client): url_parts = () assert get_x_accel_uri(*url_parts) == "/download" + + url_parts = ("/archive", "cc900b78-a8b2-4e80-b546-74c96584bd10-v4.zip") + assert ( + get_x_accel_uri(*url_parts) + == "/download/archive/cc900b78-a8b2-4e80-b546-74c96584bd10-v4.zip" + )