diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2023-01-08 01:08:21 -0500 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2023-02-19 02:55:58 +0530 |
commit | af1fbf5b62d89f7ed2e169ae1c602cbf2eb98487 (patch) | |
tree | 29974379b3bd6cb599ef9caca3f0435fe408d3e6 | |
parent | 5f65d5955142a92b1b41787ad7eff2736d6bde99 (diff) | |
download | meson-af1fbf5b62d89f7ed2e169ae1c602cbf2eb98487.zip meson-af1fbf5b62d89f7ed2e169ae1c602cbf2eb98487.tar.gz meson-af1fbf5b62d89f7ed2e169ae1c602cbf2eb98487.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
-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 97436b7..9b1795b 100644 --- a/mesonbuild/wrap/wrap.py +++ b/mesonbuild/wrap/wrap.py @@ -680,7 +680,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: |