diff options
Diffstat (limited to 'Source/Modules/xml.cxx')
-rw-r--r-- | Source/Modules/xml.cxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/Modules/xml.cxx b/Source/Modules/xml.cxx index bcfac1acc..438205f68 100644 --- a/Source/Modules/xml.cxx +++ b/Source/Modules/xml.cxx @@ -144,6 +144,8 @@ public: Xml_print_kwargs(Getattr(obj, k)); } else if (Cmp(k, "parms") == 0 || Cmp(k, "pattern") == 0) { Xml_print_parmlist(Getattr(obj, k)); + } else if (Cmp(k, "catchlist") == 0) { + Xml_print_parmlist(Getattr(obj, k), "catchlist"); } else { DOH *o; print_indent(0); @@ -198,10 +200,10 @@ public: } - void Xml_print_parmlist(ParmList *p) { + void Xml_print_parmlist(ParmList *p, const char* markup = "parmlist") { print_indent(0); - Printf(out, "<parmlist id=\"%ld\" addr=\"%x\" >\n", ++id, p); + Printf(out, "<%s id=\"%ld\" addr=\"%x\" >\n", markup, ++id, p); indent_level += 4; while (p) { print_indent(0); @@ -213,7 +215,7 @@ public: } indent_level -= 4; print_indent(0); - Printf(out, "</parmlist >\n"); + Printf(out, "</%s >\n", markup); } void Xml_print_baselist(List *p) { |