diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2017-09-11 23:21:34 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2017-09-12 02:34:37 +0530 |
commit | 66a5b0c566d7aaffd3d25848537c0f712db9083d (patch) | |
tree | b8357f8505853ed0272aca38f594e6d3ce252808 | |
parent | 6beefac09a8cd0cedb2b1ec6fc41e4a7109264c1 (diff) | |
download | meson-66a5b0c566d7aaffd3d25848537c0f712db9083d.zip meson-66a5b0c566d7aaffd3d25848537c0f712db9083d.tar.gz meson-66a5b0c566d7aaffd3d25848537c0f712db9083d.tar.bz2 |
interpreter: Always flatten when unholding arrays
Otherwise we might end up with wrapper holders in the Build object and
pickling will then fail, defeating the purpose of the holder objects.
Closes https://github.com/mesonbuild/meson/issues/2211
-rw-r--r-- | mesonbuild/mesonlib.py | 1 | ||||
-rw-r--r-- | test cases/common/87 declare dep/entity/meson.build | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py index 904d545..3e52802 100644 --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py @@ -716,6 +716,7 @@ def windows_proof_rmtree(f): def unholder_array(entries): result = [] + entries = flatten(entries) for e in entries: if hasattr(e, 'held_object'): e = e.held_object diff --git a/test cases/common/87 declare dep/entity/meson.build b/test cases/common/87 declare dep/entity/meson.build index 80bbf36..3bfe13c 100644 --- a/test cases/common/87 declare dep/entity/meson.build +++ b/test cases/common/87 declare dep/entity/meson.build @@ -1,6 +1,6 @@ entity_lib = static_library('entity', 'entity1.c') -entity_dep = declare_dependency(link_with : entity_lib, +entity_dep = declare_dependency(link_with : [[entity_lib]], include_directories : include_directories('.'), sources : 'entity2.c', compile_args : ['-DUSING_ENT=1'], |