aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Erdmann <dywi@mailerd.de>2012-08-13 20:01:14 +0200
committerAndré Erdmann <dywi@mailerd.de>2012-08-13 20:01:14 +0200
commitaaddf097909078f6af1ca68ed53f1fe40c67bec0 (patch)
tree330fef6865cc79372dd2b688d0fb37530772721a /roverlay/packageinfo.py
parentusage doc: depres console and config options (diff)
downloadR_overlay-aaddf097909078f6af1ca68ed53f1fe40c67bec0.tar.gz
R_overlay-aaddf097909078f6af1ca68ed53f1fe40c67bec0.tar.bz2
R_overlay-aaddf097909078f6af1ca68ed53f1fe40c67bec0.zip
PackageInfo, update: filter keys with value = None
Added a set simple_keys_filter_none that matches keys that will be only be added if their value is not None. This is required to fix an issue caused by the remote module's package_nofail functions that unconditionally forward keywords like src_uri_base.
Diffstat (limited to 'roverlay/packageinfo.py')
-rw-r--r--roverlay/packageinfo.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/roverlay/packageinfo.py b/roverlay/packageinfo.py
index 22e87f5..244dbb7 100644
--- a/roverlay/packageinfo.py
+++ b/roverlay/packageinfo.py
@@ -314,10 +314,14 @@ class PackageInfo ( object ):
'ebuild',
'ebuild_file',
'physical_only',
- 'src_uri_base',
'src_uri',
))
+ simple_keys_filter_none = frozenset ((
+ 'src_uri_base',
+ 'distdir',
+ ))
+
self._writelock_acquire()
for key, value in info.items():
@@ -325,13 +329,13 @@ class PackageInfo ( object ):
if key in simple_keys:
self [key] = value
+ elif key in simple_keys_filter_none:
+ if value is not None:
+ self [key] = value
+
elif key == 'filename':
self._use_filename ( value )
- elif key == 'distdir':
- if value is not None:
- self ['distdir'] = value
-
elif key == 'pvr':
self._use_pvr ( value )