diff options
author | Aleksey Lim <alsroot@sugarlabs.org> | 2013-05-25 03:54:37 (GMT) |
---|---|---|
committer | Aleksey Lim <alsroot@sugarlabs.org> | 2013-05-25 03:54:37 (GMT) |
commit | eef0e1113e675002d0452fe3b774eb2072dbcf0a (patch) | |
tree | e9cd726dfbcec5df22debe08fd77f055efbc0578 | |
parent | ce750fcf473b780367f83c0f10d6a0adcf22bdef (diff) |
In resources after-post code, process only changed properties
-rw-r--r-- | sugar_network/db/volume.py | 2 | ||||
-rw-r--r-- | sugar_network/node/obs.py | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/sugar_network/db/volume.py b/sugar_network/db/volume.py index dd14db4..34cb671 100644 --- a/sugar_network/db/volume.py +++ b/sugar_network/db/volume.py @@ -288,7 +288,9 @@ class VolumeCommands(CommandsProcessor): if not isinstance(prop, BlobProperty) and prop.on_set is not None: doc.props[name] = prop.on_set(doc, value) + changed_props = doc.props.copy() yield directory, doc + doc.props = changed_props for name, value in blobs: prop = directory.metadata[name] diff --git a/sugar_network/node/obs.py b/sugar_network/node/obs.py index 4fe09f5..6b99620 100644 --- a/sugar_network/node/obs.py +++ b/sugar_network/node/obs.py @@ -61,9 +61,9 @@ def presolve(aliases, dst_path): if not alias: continue - names = alias['binary'] - while names: - names = names.pop() + name_variants = alias['binary'] + while name_variants: + names = name_variants.pop() presolves = [] try: for arch in repo['arches']: |