Browse code

catch and report XML in the XML ParseError

Matt Domsch authored on 2014/04/11 08:05:11
Showing 1 changed files
... ...
@@ -47,6 +47,7 @@ else:
47 47
 
48 48
 try:
49 49
     import xml.etree.ElementTree as ET
50
+    from xml.etree.ElementTree import ParseError
50 51
 except ImportError:
51 52
     import elementtree.ElementTree as ET
52 53
 from xml.parsers.expat import ExpatError
... ...
@@ -92,6 +93,11 @@ def getTreeFromXml(xml):
92 92
     except ExpatError, e:
93 93
         error(e)
94 94
         raise Exceptions.ParameterError("Bucket contains invalid filenames. Please run: s3cmd fixbucket s3://your-bucket/")
95
+    except ParseError, e:
96
+        error(e)
97
+        error(xml)
98
+        raise
99
+
95 100
 __all__.append("getTreeFromXml")
96 101
 
97 102
 def getListFromXml(xml, node):