summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJonny Lamb <jonny.lamb@collabora.co.uk>2010-10-08 14:56:03 +0100
committerJonny Lamb <jonny.lamb@collabora.co.uk>2010-10-08 14:56:03 +0100
commitdbd4951da0db56a81ae6eecc46d1d13738ae2c96 (patch)
treea2a7e203b955a89dda6acce087209e85a0b24fef /tools
parent659d21c13dd19418f2f2408b0a25159c82b28b6f (diff)
parent0292830ee215ff73fbf504fc1110bef8b8c7c34b (diff)
Merge branch 'call'
Diffstat (limited to 'tools')
-rw-r--r--tools/specparser.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/specparser.py b/tools/specparser.py
index 29b03345..de060568 100644
--- a/tools/specparser.py
+++ b/tools/specparser.py
@@ -266,6 +266,23 @@ class Base(object):
n.namespaceURI = None
n.setAttribute('href', t.get_url())
+ # rewrite <tp:error-ref>
+ error_ns = 'org.freedesktop.Telepathy.Error.'
+ for n in node.getElementsByTagNameNS(XMLNS_TP, 'error-ref'):
+ try:
+ e = spec.errors[error_ns + getText(n)]
+ except KeyError:
+ print >> sys.stderr, """
+WARNING: Error '%s' not known in error namespace '%s'
+ (<tp:error-ref> in %s)
+ """.strip() % (getText(n), error_ns[:-1], self)
+ continue
+
+ n.tagName = 'a'
+ n.namespaceURI = None
+ n.setAttribute('href', e.get_url())
+ n.setAttribute('title', error_ns + getText(n))
+
# rewrite <tp:member-ref>
for n in node.getElementsByTagNameNS(XMLNS_TP, 'member-ref'):
key = getText(n)