From cf33d7531c99db57aa49efa41caa157fe51f4bd6 Mon Sep 17 00:00:00 2001 From: Jean-Francois Dockes Date: Thu, 18 Dec 2014 15:35:42 +0100 Subject: [PATCH] Make xls-dump.py errors less noisy, hopefully avoiding system reports on Fedora --- src/filters/xls-dump.py | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/src/filters/xls-dump.py b/src/filters/xls-dump.py index e224da71..f6f4ecca 100755 --- a/src/filters/xls-dump.py +++ b/src/filters/xls-dump.py @@ -77,23 +77,28 @@ class XLDumper(object): node.prettyPrint(sys.stdout, docroot, utf8 = self.params.utf8) def dumpCanonicalXML (self): - self.__parseFile() - docroot = node.Root() - root = docroot.appendElement('xls-dump') + try: + self.__parseFile() + docroot = node.Root() + root = docroot.appendElement('xls-dump') - dirEntries = self.strm.getDirectoryEntries() - for entry in dirEntries: - dirname = entry.Name - if dirname != "Workbook": - # for now, we only dump the Workbook directory stream. - continue + dirEntries = self.strm.getDirectoryEntries() + for entry in dirEntries: + dirname = entry.Name + if dirname != "Workbook": + # for now, we only dump the Workbook directory stream. + continue + + dirstrm = self.strm.getDirectoryStream(entry) + wbmodel = self.__buildWorkbookModel(dirstrm) + wbmodel.encrypted = self.strmData.encrypted + root.appendChild(wbmodel.createDOM()) + + node.prettyPrint(sys.stdout, docroot, utf8 = self.params.utf8) - dirstrm = self.strm.getDirectoryStream(entry) - wbmodel = self.__buildWorkbookModel(dirstrm) - wbmodel.encrypted = self.strmData.encrypted - root.appendChild(wbmodel.createDOM()) - - node.prettyPrint(sys.stdout, docroot, utf8 = self.params.utf8) + except Exception as err: + print >> sys.stderr, "xls-dump.py: error: %s" % err + sys.exit(1) def dump (self): self.__parseFile()