From 0f6a886ae092561fa287ae8c44e3bbe61ccd4916 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Mon, 9 Mar 2020 14:13:37 +0000 Subject: [PATCH] Corrected the extent of a try/except block, moving more code inside the block. Fixes a submission exception that should just be a document error reported back to the user. - Legacy-Id: 17411 --- ietf/submit/forms.py | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ietf/submit/forms.py b/ietf/submit/forms.py index 8d83eb9fa..19b2b4b28 100644 --- a/ietf/submit/forms.py +++ b/ietf/submit/forms.py @@ -317,22 +317,22 @@ class SubmissionBaseUploadForm(forms.Form): txt_file.seek(0) try: text = bytes.decode(self.file_info['txt'].charset) + # + self.parsed_draft = Draft(text, txt_file.name) + if self.filename == None: + self.filename = self.parsed_draft.filename + elif self.filename != self.parsed_draft.filename: + self.add_error('txt', "Inconsistent name information: xml:%s, txt:%s" % (self.filename, self.parsed_draft.filename)) + if self.revision == None: + self.revision = self.parsed_draft.revision + elif self.revision != self.parsed_draft.revision: + self.add_error('txt', "Inconsistent revision information: xml:%s, txt:%s" % (self.revision, self.parsed_draft.revision)) + if self.title == None: + self.title = self.parsed_draft.get_title() + elif self.title != self.parsed_draft.get_title(): + self.add_error('txt', "Inconsistent title information: xml:%s, txt:%s" % (self.title, self.parsed_draft.get_title())) except (UnicodeDecodeError, LookupError) as e: self.add_error('txt', 'Failed decoding the uploaded file: "%s"' % str(e)) - # - self.parsed_draft = Draft(text, txt_file.name) - if self.filename == None: - self.filename = self.parsed_draft.filename - elif self.filename != self.parsed_draft.filename: - self.add_error('txt', "Inconsistent name information: xml:%s, txt:%s" % (self.filename, self.parsed_draft.filename)) - if self.revision == None: - self.revision = self.parsed_draft.revision - elif self.revision != self.parsed_draft.revision: - self.add_error('txt', "Inconsistent revision information: xml:%s, txt:%s" % (self.revision, self.parsed_draft.revision)) - if self.title == None: - self.title = self.parsed_draft.get_title() - elif self.title != self.parsed_draft.get_title(): - self.add_error('txt', "Inconsistent title information: xml:%s, txt:%s" % (self.title, self.parsed_draft.get_title())) # The following errors are likely noise if we have previous field # errors: