diff --git a/dcc/fabricate.py b/dcc/fabricate.py index bb3ba7e..0d1ae0a 100644 --- a/dcc/fabricate.py +++ b/dcc/fabricate.py @@ -1,10 +1,14 @@ +import contextlib import dcc.config import dcc.doom_base import subprocess +import tempfile class Fabricate(dcc.doom_base.WadMap): def take_action(self, parsed_args): - subprocess.run([dcc.config.DSDA] + - dcc.config.DsdaPreamble(parsed_args.wad, parsed_args.map) + - ["-timedemo", dcc.config.DemoInPath(parsed_args.wad, parsed_args.map)] + - ["-viddump", dcc.config.VideoPath(parsed_args.wad, parsed_args.map)]) + with tempfile.TemporaryDirectory() as td: + with contextlib.chdir(td): + subprocess.run([dcc.config.DSDA] + + dcc.config.DsdaPreamble(parsed_args.wad, parsed_args.map) + + ["-timedemo", dcc.config.DemoInPath(parsed_args.wad, parsed_args.map)] + + ["-viddump", dcc.config.VideoPath(parsed_args.wad, parsed_args.map)])