diff options
| author | Vosjedev <vosje@vosjedev.net> | 2026-01-25 11:50:21 +0100 |
|---|---|---|
| committer | Vosjedev <vosje@vosjedev.net> | 2026-01-25 11:50:21 +0100 |
| commit | 6c12b9b02bafe3f83d8b409b589ccd15de8bf0f2 (patch) | |
| tree | ed0abb4acc555ca6c97994b4ddc86d367ba405cc /src/discord_image_bridge | |
| parent | 643c54686e0ff37771dc1375c65925f2dc2367ea (diff) | |
| download | discord_image_bridge-6c12b9b02bafe3f83d8b409b589ccd15de8bf0f2.tar.gz discord_image_bridge-6c12b9b02bafe3f83d8b409b589ccd15de8bf0f2.tar.bz2 discord_image_bridge-6c12b9b02bafe3f83d8b409b589ccd15de8bf0f2.tar.xz | |
use a try/catch for mkdir instead of an if block to avoid race conditions
Signed-off-by: Vosjedev <vosje@vosjedev.net>
Diffstat (limited to 'src/discord_image_bridge')
| -rw-r--r-- | src/discord_image_bridge/utils.py | 5 |
1 files changed, 3 insertions, 2 deletions
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) |
