diff options
author | Lars Wirzenius <lars.wirzenius@codethink.co.uk> | 2013-08-16 15:02:58 +0000 |
---|---|---|
committer | Richard Maw <richard.maw@codethink.co.uk> | 2013-09-05 09:46:37 +0000 |
commit | 8b29e93b2179145f67acc874493cf0bf863fe7a0 (patch) | |
tree | 898c02fabd3a3cb963e63acbf45c5f638fbcd3ae | |
parent | 0d1c1e0905a627df60b925e9508d4ebfb08a9415 (diff) | |
download | morph-8b29e93b2179145f67acc874493cf0bf863fe7a0.tar.gz |
Fix MorphologySet bug: right Morphology object changed
The old code worked, but it was depending on really obscure details
of how the Python scoping works. This commit changes it to not do
that anymore.
-rw-r--r-- | morphlib/morphset.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/morphlib/morphset.py b/morphlib/morphset.py index 98a4b8f9..7118b702 100644 --- a/morphlib/morphset.py +++ b/morphlib/morphset.py @@ -135,7 +135,7 @@ class MorphologySet(object): spec['ref'] == orig_ref and spec['morph'] + '.morph' == morph_filename) - def change_specs(specs): + def change_specs(specs, m): for spec in specs: if wanted_spec(spec): spec['ref'] = new_ref @@ -143,10 +143,10 @@ class MorphologySet(object): def change(m): if m['kind'] == 'system': - change_specs(m['strata']) + change_specs(m['strata'], m) elif m['kind'] == 'stratum': - change_specs(m['chunks']) - change_specs(m['build-depends']) + change_specs(m['chunks'], m) + change_specs(m['build-depends'], m) for m in self.morphologies: change(m) |