aboutsummaryrefslogtreecommitdiffstats
path: root/debian/lib/python/debian_linux/utils.py
diff options
context:
space:
mode:
authorBen Hutchings <benh@debian.org>2011-09-03 20:53:59 +0000
committerBen Hutchings <benh@debian.org>2011-09-03 20:53:59 +0000
commit07aafecfb1914954d1e7952555ab9baeaafc7a82 (patch)
tree9b4371e27bd927fb4b672b41625a29c3ff568a23 /debian/lib/python/debian_linux/utils.py
parentcfe2d8200a5a36edfb6c1b8124a9e3b75839afa5 (diff)
downloadkernel_replicant_linux-07aafecfb1914954d1e7952555ab9baeaafc7a82.tar.gz
kernel_replicant_linux-07aafecfb1914954d1e7952555ab9baeaafc7a82.tar.bz2
kernel_replicant_linux-07aafecfb1914954d1e7952555ab9baeaafc7a82.zip
Move debian_linux.utils.Templates._read_control out to module scope
svn path=/dists/trunk/linux-2.6/; revision=18041
Diffstat (limited to 'debian/lib/python/debian_linux/utils.py')
-rw-r--r--debian/lib/python/debian_linux/utils.py76
1 files changed, 38 insertions, 38 deletions
diff --git a/debian/lib/python/debian_linux/utils.py b/debian/lib/python/debian_linux/utils.py
index 9fd86b820095..0c17884f23d7 100644
--- a/debian/lib/python/debian_linux/utils.py
+++ b/debian/lib/python/debian_linux/utils.py
@@ -55,46 +55,9 @@ class Templates(object):
if os.path.exists(filename):
f = file(filename)
if prefix == 'control':
- return self._read_control(f)
+ return read_control(f)
return f.read()
- def _read_control(self, f):
- from .debian import Package
-
- entries = []
-
- while True:
- e = Package()
- last = None
- lines = []
- while True:
- line = f.readline()
- if not line:
- break
- line = line.strip('\n')
- if not line:
- break
- if line[0] in ' \t':
- if not last:
- raise ValueError('Continuation line seen before first header')
- lines.append(line.lstrip())
- continue
- if last:
- e[last] = '\n'.join(lines)
- i = line.find(':')
- if i < 0:
- raise ValueError("Not a header, not a continuation: ``%s''" % line)
- last = line[:i]
- lines = [line[i+1:].lstrip()]
- if last:
- e[last] = '\n'.join(lines)
- if not e:
- break
-
- entries.append(e)
-
- return entries
-
def get(self, key, default=None):
if key in self._cache:
return self._cache[key]
@@ -104,6 +67,43 @@ class Templates(object):
return default
return value
+def read_control(f):
+ from .debian import Package
+
+ entries = []
+
+ while True:
+ e = Package()
+ last = None
+ lines = []
+ while True:
+ line = f.readline()
+ if not line:
+ break
+ line = line.strip('\n')
+ if not line:
+ break
+ if line[0] in ' \t':
+ if not last:
+ raise ValueError('Continuation line seen before first header')
+ lines.append(line.lstrip())
+ continue
+ if last:
+ e[last] = '\n'.join(lines)
+ i = line.find(':')
+ if i < 0:
+ raise ValueError("Not a header, not a continuation: ``%s''" % line)
+ last = line[:i]
+ lines = [line[i+1:].lstrip()]
+ if last:
+ e[last] = '\n'.join(lines)
+ if not e:
+ break
+
+ entries.append(e)
+
+ return entries
+
class TextWrapper(textwrap.TextWrapper):
wordsep_re = re.compile(
r'(\s+|' # any whitespace