From 6c12b9b02bafe3f83d8b409b589ccd15de8bf0f2 Mon Sep 17 00:00:00 2001 From: Vosjedev Date: Sun, 25 Jan 2026 11:50:21 +0100 Subject: use a try/catch for mkdir instead of an if block to avoid race conditions Signed-off-by: Vosjedev --- src/discord_image_bridge/utils.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/discord_image_bridge') diff --git a/src/discord_image_bridge/utils.py b/src/discord_image_bridge/utils.py index 1e013c1..79fd209 100644 --- a/src/discord_image_bridge/utils.py +++ b/src/discord_image_bridge/utils.py @@ -5,7 +5,6 @@ import requests from hashlib import sha256 as do_hash from . import discord -from . import _values from .downloadpool import DownloadPool from . import fsmanager @@ -18,8 +17,10 @@ def download_and_cache(url, filename): try: fname=fsmanager.hash2fname(hash) dirname=os.path.dirname(fname) - if not os.path.isdir(dirname): + try: os.mkdir(dirname) + except FileExistsError: + pass with fsmanager.DataFile(open(fname,'wb')) as fd: fd.write(resp.content) -- cgit