Make deletion async friendly

This commit is contained in:
Luke Murphy 2020-10-03 13:23:09 +02:00
parent b1de6737f0
commit cfcf7e39f0
No known key found for this signature in database
GPG Key ID: 5E2EF5A63E3718CC

View File

@ -27,12 +27,14 @@ use/prefer public interfaces ? (export functions)
"""
def try_deleting(files):
async def try_deleting(files):
for f in files:
try:
os.remove(f)
except OSError:
pass
path = trio.Path(f)
if os.path.exists(path):
await path.rmdir()
except Exception as exception:
print("PANIC: {}".format(exception))
def build_argument_parser(args):
@ -307,7 +309,7 @@ async def handle_pad(args, padid, data, info, session):
## ENFORCE __NOPUBLISH__ MAGIC WORD
##########################################
if args.nopublish in text:
try_deleting(
await try_deleting(
(
p + raw_ext,
p + ".raw.html",
@ -326,7 +328,7 @@ async def handle_pad(args, padid, data, info, session):
## ENFORCE __PUBLISH__ MAGIC WORD
##########################################
if args.publish_opt_in and args.publish not in text:
try_deleting(
await try_deleting(
(
p + raw_ext,
p + ".raw.html",