aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/scripts
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2022-07-06 23:12:43 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2022-07-16 00:29:10 +0300
commitc44ae353565fdf17ebe521189cf830a683fbc25f (patch)
treead745f603695ed854e01d077c8d45a4cfa67b53b /mesonbuild/scripts
parent468022f91c3c9eb5b98ac5c62928afac9b9139b2 (diff)
downloadmeson-c44ae353565fdf17ebe521189cf830a683fbc25f.zip
meson-c44ae353565fdf17ebe521189cf830a683fbc25f.tar.gz
meson-c44ae353565fdf17ebe521189cf830a683fbc25f.tar.bz2
Ignore encoding errors when scanning. Closes #10571.
In Fortran and C++ all the bits we care about are in ASCII. 8-bit characters can only occur in comments and string literals and we don't parse those.
Diffstat (limited to 'mesonbuild/scripts')
-rw-r--r--mesonbuild/scripts/depscan.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/mesonbuild/scripts/depscan.py b/mesonbuild/scripts/depscan.py
index 6f92715..5fa30cb 100644
--- a/mesonbuild/scripts/depscan.py
+++ b/mesonbuild/scripts/depscan.py
@@ -62,7 +62,7 @@ class DependencyScanner:
def scan_fortran_file(self, fname: str) -> None:
fpath = pathlib.Path(fname)
modules_in_this_file = set()
- for line in fpath.read_text(encoding='utf-8').split('\n'):
+ for line in fpath.read_text(encoding='utf-8', errors='ignore').split('\n'):
import_match = FORTRAN_USE_RE.match(line)
export_match = FORTRAN_MODULE_RE.match(line)
submodule_export_match = FORTRAN_SUBMOD_RE.match(line)
@@ -112,7 +112,7 @@ class DependencyScanner:
def scan_cpp_file(self, fname: str) -> None:
fpath = pathlib.Path(fname)
- for line in fpath.read_text(encoding='utf-8').split('\n'):
+ for line in fpath.read_text(encoding='utf-8', errors='ignore').split('\n'):
import_match = CPP_IMPORT_RE.match(line)
export_match = CPP_EXPORT_RE.match(line)
if import_match: