aboutsummaryrefslogtreecommitdiffstats
path: root/debian/lib/python/debian_linux/firmware.py
diff options
context:
space:
mode:
authorBen Hutchings <benh@debian.org>2011-12-29 18:28:04 +0000
committerBen Hutchings <benh@debian.org>2011-12-29 18:28:04 +0000
commitf838ecc2de6f60daea891a937b843a7ea65bb5fd (patch)
treef3ad5d75742c64b043810d9a1248fda7a5dedd9b /debian/lib/python/debian_linux/firmware.py
parentea83f47603022d3def5fdcbd26bce69de225ebe9 (diff)
downloadkernel_replicant_linux-f838ecc2de6f60daea891a937b843a7ea65bb5fd.tar.gz
kernel_replicant_linux-f838ecc2de6f60daea891a937b843a7ea65bb5fd.tar.bz2
kernel_replicant_linux-f838ecc2de6f60daea891a937b843a7ea65bb5fd.zip
Update firmware WHENCE file parsing
All File fields now describe just one file, which may be followed by other related fields. Never flush the file details immediately. For some File fields, there are now multiple following Source fields. Collect them in a list. svn path=/dists/trunk/linux-2.6/; revision=18432
Diffstat (limited to 'debian/lib/python/debian_linux/firmware.py')
-rw-r--r--debian/lib/python/debian_linux/firmware.py17
1 files changed, 6 insertions, 11 deletions
diff --git a/debian/lib/python/debian_linux/firmware.py b/debian/lib/python/debian_linux/firmware.py
index 8741e6959fda..35770c2e0b32 100644
--- a/debian/lib/python/debian_linux/firmware.py
+++ b/debian/lib/python/debian_linux/firmware.py
@@ -24,7 +24,7 @@ class FirmwareWhence(list):
licence = None
binary = None
desc = None
- source = None
+ source = []
version = None
for line in file:
@@ -49,7 +49,7 @@ class FirmwareWhence(list):
files[binary] = FirmwareFile(binary, desc, source, version)
binary = None
desc = None
- source = None
+ source = []
version = None
continue
@@ -62,18 +62,13 @@ class FirmwareWhence(list):
if keyword == 'Driver':
driver = value.split(' ')[0].lower()
elif keyword == 'File':
- match = re.match(r'(\S+)\s+--\s+(.*)', value)
- if match:
- binary = match.group(1)
- desc = match.group(2)
- else:
- for binary in value.strip().split():
- files[binary] = FirmwareFile(binary)
- binary = None
+ match = re.match(r'(\S+)(?:\s+--\s+(.*))?', value)
+ binary = match.group(1)
+ desc = match.group(2)
elif keyword in ['Info', 'Version']:
version = value
elif keyword == 'Source':
- source = value
+ source.append(value)
else:
licence = value
elif licence is not None: