From: Claudio Bley Date: Fri, 11 Jan 2013 10:39:19 +0000 (+0100) Subject: docs: restrict the set of characters for info keys X-Git-Tag: v1.0.2-rc1~205 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bf1786b6d5bd74d05cbf74e94b44c6584d269856;p=thirdparty%2Flibvirt.git docs: restrict the set of characters for info keys When parsing the top level comment of a file, apibuild.py used to split on any ':' character of a line regarding the first part as a key for a setting, e.g. "Summary". The second part would then be assigned as the value for that key. This means you could not use a ':' character inside those comments without ill effects. Now, a key must consist solely of alphanumeric characters, '_' or '.'. --- diff --git a/docs/apibuild.py b/docs/apibuild.py index 63b21e1f7b..e6a45ec474 100755 --- a/docs/apibuild.py +++ b/docs/apibuild.py @@ -10,6 +10,7 @@ import os, sys import string import glob +import re quiet=True warnings=0 @@ -655,20 +656,17 @@ class CParser: item = None for line in lines: line = line.lstrip().lstrip('*').lstrip() - try: - (it, line) = string.split(line, ":", 1) - item = it - line = line.lstrip() + + m = re.match('([_.a-zA-Z0-9]+):(.*)', line) + if m: + item = m.group(1) + line = m.group(2).lstrip() + + if item: if res.has_key(item): res[item] = res[item] + " " + line else: res[item] = line - except: - if item != None: - if res.has_key(item): - res[item] = res[item] + " " + line - else: - res[item] = line self.index.info = res def strip_lead_star(self, line):