[Erp5-report] r29793 - /erp5/trunk/products/ERP5/Tool/TemplateTool.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Mon Oct 19 14:14:48 CEST 2009
Author: nicolas.dumazet
Date: Mon Oct 19 14:14:46 2009
New Revision: 29793
URL: http://svn.erp5.org?rev=29793&view=rev
Log:
Catch xml.parser.expat.ExpatError when an invalid bt5 repo is passed along
Modified:
erp5/trunk/products/ERP5/Tool/TemplateTool.py
Modified: erp5/trunk/products/ERP5/Tool/TemplateTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Tool/TemplateTool.py?rev=29793&r1=29792&r2=29793&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Tool/TemplateTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Tool/TemplateTool.py [utf8] Mon Oct 19 14:14:46 2009
@@ -45,6 +45,7 @@
from urllib import pathname2url, urlopen, splittype, urlretrieve
import re
from xml.dom.minidom import parse
+from xml.parsers.expat import ExpatError
import struct
import cPickle
import posixpath
@@ -526,7 +527,17 @@
f = urlopen(url)
property_dict_list = []
try:
- doc = parse(f)
+ try:
+ doc = parse(f)
+ except ExpatError:
+ if REQUEST is not None:
+ psm = translateString('Invalid repository: ${repo}',
+ mapping={'repo':repository})
+ REQUEST.RESPONSE.redirect("%s?portal_status_message=%s"
+ % (self.absolute_url(), psm))
+ return
+ else:
+ raise RuntimeError, 'Invalid repository: %s' % repository
try:
root = doc.documentElement
for template in root.getElementsByTagName("template"):
More information about the Erp5-report
mailing list