diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2023-01-08 01:08:21 -0500 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2023-02-13 09:09:10 -0500 |
commit | 7ab2892eb068adba51fac0652a70d3ec9649395b (patch) | |
tree | bc74cb551f4522d1f9e836c3007ed10459b00245 /mesonbuild | |
parent | e0b63d539e7374faa15903c73cdd0e86a31da1e3 (diff) | |
download | meson-7ab2892eb068adba51fac0652a70d3ec9649395b.zip meson-7ab2892eb068adba51fac0652a70d3ec9649395b.tar.gz meson-7ab2892eb068adba51fac0652a70d3ec9649395b.tar.bz2 |
wrap: ensure the tempfile used for downloading is closed
This is generally a good idea, and the tempfile is already instructed to
not auto-delete on close. It also fixes a bug on PyPy, where the file
isn't valid because it's not explicitly closed. This is probably due to
the garbage collection modes -- in CPython, the object goes out of scope
and gets automatically closed before we actually attempt to unpack it.
Fixes #11246
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/wrap/wrap.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mesonbuild/wrap/wrap.py b/mesonbuild/wrap/wrap.py index 313b749..3effc65 100644 --- a/mesonbuild/wrap/wrap.py +++ b/mesonbuild/wrap/wrap.py @@ -676,7 +676,7 @@ class Resolver: except urllib.error.URLError as e: mlog.log(str(e)) raise WrapException(f'could not get {urlstring} is the internet available?') - with contextlib.closing(resp) as resp: + with contextlib.closing(resp) as resp, tmpfile as tmpfile: try: dlsize = int(resp.info()['Content-Length']) except TypeError: |