Skip to content

Commit 4ec5371

Browse files
committed
Fix upload folder path for frozen executable
Updated get_upload_folder to resolve the upload directory relative to the executable location when running as a frozen app, ensuring correct path handling for both script and compiled modes.
1 parent 8c6dff1 commit 4ec5371

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

app/routes.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,19 @@
3131

3232
def get_upload_folder():
3333
"""Get the configured upload folder path"""
34+
import sys
35+
3436
folder = config.get('storage', 'upload_folder', 'uploads')
3537

36-
# Convert to absolute path relative to project root (not app/ directory)
38+
# Convert to absolute path relative to executable location (for frozen app) or project root
3739
if not os.path.isabs(folder):
38-
# Get project root (parent of app directory)
39-
project_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
40-
folder = os.path.join(project_root, folder)
40+
if getattr(sys, 'frozen', False):
41+
# Running as compiled executable - use exe directory
42+
base_dir = os.path.dirname(sys.executable)
43+
else:
44+
# Running as script - use project root (parent of app directory)
45+
base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
46+
folder = os.path.join(base_dir, folder)
4147

4248
if not os.path.exists(folder):
4349
os.makedirs(folder)

0 commit comments

Comments
 (0)