Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py

changeset 115
13d58f643b43
parent 96
9624a110667d
child 415
59a0f9e90768
child 468
ad6cfaeb558e
diff -r f6e7cec11168 -r 13d58f643b43 Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py
--- a/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Sun Feb 14 13:33:03 2010 +0000
+++ b/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Sun Feb 14 14:01:08 2010 +0000
@@ -140,16 +140,23 @@
                     self.__createResultItem(fname, line, error, code)
                 else:
                     if Preferences.getFlakes("IncludeInSyntaxCheck"):
-                        warnings = Checker(source, file)
-                        warnings.messages.sort(key = lambda a: a.lineno)
-                        for warning in warnings.messages:
-                            if ignoreStarImportWarnings and \
-                               isinstance(warning, ImportStarUsed):
-                                continue
-                            self.noResults = False
-                            fname, lineno, message = warning.getMessageData()
-                            self.__createResultItem(fname, lineno, message, "", 
-                                                    isWarning = True)
+                        try:
+                            warnings = Checker(source, file)
+                            warnings.messages.sort(key = lambda a: a.lineno)
+                            for warning in warnings.messages:
+                                if ignoreStarImportWarnings and \
+                                   isinstance(warning, ImportStarUsed):
+                                    continue
+                                self.noResults = False
+                                fname, lineno, message = warning.getMessageData()
+                                self.__createResultItem(fname, lineno, message, "", 
+                                                        isWarning = True)
+                        except SyntaxError as err:
+                            if err.text.strip():
+                                msg = err.text.strip()
+                            else:
+                                msg = err.msg
+                            self.__createResultItem(err.filename, err.lineno, msg, "")
                 progress += 1
                 self.checkProgress.setValue(progress)
                 QApplication.processEvents()

eric ide

mercurial