machine file: Fix crash on empty value

Fixes: #12025
pull/10527/merge
Xavier Claessens 2 years ago committed by Eli Schwartz
parent 926c3a6919
commit 142dd17f5b
  1. 6
      mesonbuild/coredata.py

@ -992,9 +992,11 @@ class MachineFileParser():
value = value.replace('\\', '\\\\')
try:
ast = mparser.Parser(value, 'machinefile').parse()
if not ast.lines:
raise EnvironmentException('value cannot be empty')
res = self._evaluate_statement(ast.lines[0])
except MesonException:
raise EnvironmentException(f'Malformed value in machine file variable {entry!r}.')
except MesonException as e:
raise EnvironmentException(f'Malformed value in machine file variable {entry!r}: {str(e)}.')
except KeyError as e:
raise EnvironmentException(f'Undefined constant {e.args[0]!r} in machine file variable {entry!r}.')
section[entry] = res

Loading…
Cancel
Save