Some syntax errors were being caught by tokenize during the tabnanny

check, resulting in obscure error messages.  Do the syntax check
first.  Bug 1562716, 1562719  Backport of r52083
This commit is contained in:
Kurt B. Kaiser 2008-02-14 03:25:59 +00:00
parent b80a194531
commit 6493ade54d
2 changed files with 8 additions and 6 deletions

View File

@ -3,6 +3,10 @@ What's New in IDLE 1.2.2c1?
*Release date: XX-FEB-2008*
- Some syntax errors were being caught by tokenize during the tabnanny
check, resulting in obscure error messages. Do the syntax check
first. Bug 1562716, 1562719 (backport r52083)
- Patch 1693258: Fix for duplicate "preferences" menu-OS X. Backport of r56204.
- OSX: Avoid crash for those versions of Tcl/Tk which don't have a console

View File

@ -57,9 +57,10 @@ class ScriptBinding:
filename = self.getfilename()
if not filename:
return
if not self.checksyntax(filename):
return
if not self.tabnanny(filename):
return
self.checksyntax(filename)
def tabnanny(self, filename):
f = open(filename, 'r')
@ -76,9 +77,6 @@ class ScriptBinding:
self.editwin.gotoline(nag.get_lineno())
self.errorbox("Tab/space error", indent_message)
return False
except IndentationError:
# From tokenize(), let compile() in checksyntax find it again.
pass
return True
def checksyntax(self, filename):
@ -139,11 +137,11 @@ class ScriptBinding:
filename = self.getfilename()
if not filename:
return
if not self.tabnanny(filename):
return
code = self.checksyntax(filename)
if not code:
return
if not self.tabnanny(filename):
return
shell = self.shell
interp = shell.interp
if PyShell.use_subprocess: