From 6b16e12d7c29a1e9a84abbcbc68ac093a673008a Mon Sep 17 00:00:00 2001 From: Chris Hennes Date: Wed, 10 Feb 2021 14:09:11 -0600 Subject: [PATCH] [OTHER] Catch only Exception, not BaseException --- src/Gui/WidgetFactory.cpp | 4 ++-- src/Mod/Drawing/DrawingPatterns.py | 4 ++-- .../Image/ImageTools/_CommandImageScaling.py | 2 +- src/Mod/Import/App/SCL/Builtin.py | 4 ++-- src/Mod/Mesh/App/MeshTestsApp.py | 2 +- src/Mod/OpenSCAD/colorcodeshapes.py | 2 +- src/Mod/OpenSCAD/importCSG.py | 4 ++-- src/Mod/Part/Gui/TaskCheckGeometry.cpp | 4 ++-- src/Mod/PartDesign/InitGui.py | 2 +- src/Mod/PartDesign/Scripts/Gear.py | 2 +- .../Path/PathScripts/PathPropertyBagGui.py | 2 +- src/Mod/Path/PathScripts/PathToolBitGui.py | 2 +- src/Mod/Spreadsheet/TestSpreadsheet.py | 6 ++--- src/Mod/Test/BaseTests.py | 4 ++-- src/Mod/Test/Document.py | 24 +++++++++---------- src/Mod/Test/Gui/qtunittest.py | 2 +- src/Mod/Test/unittestgui.py | 2 +- src/Mod/Tux/PersistentToolbarsGui.py | 4 ++-- 18 files changed, 38 insertions(+), 38 deletions(-) diff --git a/src/Gui/WidgetFactory.cpp b/src/Gui/WidgetFactory.cpp index 7441d75389..70f3e0f6c9 100644 --- a/src/Gui/WidgetFactory.cpp +++ b/src/Gui/WidgetFactory.cpp @@ -828,7 +828,7 @@ Py::Object PySideUicModule::loadUiType(const Py::Tuple& args) << "import xml.etree.ElementTree as xml\n" << "try:\n" << " from cStringIO import StringIO\n" - << "except:\n" + << "except Exception:\n" << " from io import StringIO\n" << "\n" << "uiFile = \"" << file.c_str() << "\"\n" @@ -850,7 +850,7 @@ Py::Object PySideUicModule::loadUiType(const Py::Tuple& args) << "import xml.etree.ElementTree as xml\n" << "try:\n" << " from cStringIO import StringIO\n" - << "except:\n" + << "except Exception:\n" << " from io import StringIO\n" << "\n" << "uiFile = \"" << file.c_str() << "\"\n" diff --git a/src/Mod/Drawing/DrawingPatterns.py b/src/Mod/Drawing/DrawingPatterns.py index 4a0756a6f2..61cb84d9f1 100644 --- a/src/Mod/Drawing/DrawingPatterns.py +++ b/src/Mod/Drawing/DrawingPatterns.py @@ -272,12 +272,12 @@ def decodeName(name,scale,thickness): if len(name) > 1: try: scale = float(name[1]) - except: + except Exception: pass if len(name) > 2: try: thickness = float(name[2]) - except: + except Exception: pass return name[0],scale,thickness diff --git a/src/Mod/Image/ImageTools/_CommandImageScaling.py b/src/Mod/Image/ImageTools/_CommandImageScaling.py index 790606a642..5c93c89e13 100644 --- a/src/Mod/Image/ImageTools/_CommandImageScaling.py +++ b/src/Mod/Image/ImageTools/_CommandImageScaling.py @@ -155,7 +155,7 @@ def cmdCreateImageScaling(name, trackers): ok = True elif q.Unit == FreeCAD.Units.Length: ok = True - except: + except Exception: ok = False if not ok: raise ValueError diff --git a/src/Mod/Import/App/SCL/Builtin.py b/src/Mod/Import/App/SCL/Builtin.py index 67f5900078..ed8d70011b 100644 --- a/src/Mod/Import/App/SCL/Builtin.py +++ b/src/Mod/Import/App/SCL/Builtin.py @@ -658,11 +658,11 @@ def VALUE(V): # first try to instantiate an INTEGER from the string: try: return INTEGER(V) - except: + except Exception: pass #not possible, try to cast to REAL try: return REAL(V) - except: + except Exception: pass # else return None return None diff --git a/src/Mod/Mesh/App/MeshTestsApp.py b/src/Mod/Mesh/App/MeshTestsApp.py index 824384df88..f91f0f41eb 100644 --- a/src/Mod/Mesh/App/MeshTestsApp.py +++ b/src/Mod/Mesh/App/MeshTestsApp.py @@ -9,7 +9,7 @@ import time, tempfile, math # http://python-kurs.eu/threads.php try: import _thread as thread -except: +except Exception: import thread diff --git a/src/Mod/OpenSCAD/colorcodeshapes.py b/src/Mod/OpenSCAD/colorcodeshapes.py index 2aa64529f5..328123b755 100644 --- a/src/Mod/OpenSCAD/colorcodeshapes.py +++ b/src/Mod/OpenSCAD/colorcodeshapes.py @@ -106,7 +106,7 @@ def colorcodeshapes(objs): st = mostbasiccompound(obj.Shape) color=shapecolors[st] obj.ViewObject.ShapeColor = color - except: + except Exception: raise #colorcodeshapes(App.ActiveDocument.Objects) diff --git a/src/Mod/OpenSCAD/importCSG.py b/src/Mod/OpenSCAD/importCSG.py index 1cee8d5dce..07f33ff1b9 100644 --- a/src/Mod/OpenSCAD/importCSG.py +++ b/src/Mod/OpenSCAD/importCSG.py @@ -944,7 +944,7 @@ def p_cylinder_action(p): try : import Draft mycyl.Base = Draft.makePolygon(n,r1,face=True) - except : + except Exception: # If Draft can't import (probably due to lack of Pivy on Mac and # Linux builds of FreeCAD), this is a fallback. # or old level of FreeCAD @@ -1182,7 +1182,7 @@ def p_polyhedron_action(p) : print(w) try: f = Part.Face(w) - except: + except Exception: secWireList = w.Edges[:] f = Part.makeFilledFace(Part.__sortEdges__(secWireList)) #f = make_face(v[int(i[0])],v[int(i[1])],v[int(i[2])]) diff --git a/src/Mod/Part/Gui/TaskCheckGeometry.cpp b/src/Mod/Part/Gui/TaskCheckGeometry.cpp index 29fc3b30ed..bff6047d35 100644 --- a/src/Mod/Part/Gui/TaskCheckGeometry.cpp +++ b/src/Mod/Part/Gui/TaskCheckGeometry.cpp @@ -640,10 +640,10 @@ void TaskCheckGeometryResults::buildShapeContent(const QString &baseName, const cmdstream << "if hasattr(_shp,'normalAt'):" << std::endl; cmdstream << " try:" << std::endl; cmdstream << " _result += 'normalAt(0): '+str([round(vv," << decimals << ") for vv in _shp.normalAt(0)]) +'\\n'" << std::endl; - cmdstream << " except:" << std::endl; + cmdstream << " except Exception:" << std::endl; cmdstream << " try:" << std::endl; cmdstream << " _result += 'normalAt(0,0): '+str([round(vv," << decimals << ") for vv in _shp.normalAt(0,0)]) +'\\n'" << std::endl; - cmdstream << " except:" << std::endl; + cmdstream << " except Exception:" << std::endl; cmdstream << " pass" << std::endl; cmdstream << "if hasattr(_shp, 'isClosed') and ('Wire' in _type or 'Edge' in _type):" << std::endl; cmdstream << " _result += 'isClosed: '+str(_shp.isClosed())+'\\n'" << std::endl; diff --git a/src/Mod/PartDesign/InitGui.py b/src/Mod/PartDesign/InitGui.py index f7b7ac747e..ef1235b843 100644 --- a/src/Mod/PartDesign/InitGui.py +++ b/src/Mod/PartDesign/InitGui.py @@ -47,7 +47,7 @@ class PartDesignWorkbench ( Workbench ): print("Wizard shaft module cannot be loaded") try: from FeatureHole import HoleGui - except: + except Exception: pass import PartDesignGui diff --git a/src/Mod/PartDesign/Scripts/Gear.py b/src/Mod/PartDesign/Scripts/Gear.py index 46a0f71c26..75f617e0cd 100644 --- a/src/Mod/PartDesign/Scripts/Gear.py +++ b/src/Mod/PartDesign/Scripts/Gear.py @@ -11,7 +11,7 @@ Gui=FreeCADGui def proceed(): try: compute() - except: + except Exception: hide() QtGui.QApplication.restoreOverrideCursor() diff --git a/src/Mod/Path/PathScripts/PathPropertyBagGui.py b/src/Mod/Path/PathScripts/PathPropertyBagGui.py index 54f55d4a56..a8ff2a97fa 100644 --- a/src/Mod/Path/PathScripts/PathPropertyBagGui.py +++ b/src/Mod/Path/PathScripts/PathPropertyBagGui.py @@ -346,7 +346,7 @@ class TaskPanel(object): name, info = self.addCustomProperty(self.obj, dialog) try: setattr(obj, nam, val) - except: + except Exception: # this can happen if the old enumeration value doesn't exist anymore pass newVal = PathUtil.getPropertyValueString(obj, nam) diff --git a/src/Mod/Path/PathScripts/PathToolBitGui.py b/src/Mod/Path/PathScripts/PathToolBitGui.py index 1bf56aea68..62e8e0bfc1 100644 --- a/src/Mod/Path/PathScripts/PathToolBitGui.py +++ b/src/Mod/Path/PathScripts/PathToolBitGui.py @@ -186,7 +186,7 @@ def isValidFileName(filename): try: with open(filename, "w") as tempfile: return True - except: + except Exception: return False diff --git a/src/Mod/Spreadsheet/TestSpreadsheet.py b/src/Mod/Spreadsheet/TestSpreadsheet.py index 157c57d9a7..87e44473c8 100644 --- a/src/Mod/Spreadsheet/TestSpreadsheet.py +++ b/src/Mod/Spreadsheet/TestSpreadsheet.py @@ -768,7 +768,7 @@ class SpreadsheetCases(unittest.TestCase): try: sheet.setAlias("A2","Test") self.fail("An ambiguous alias was set which shouldn't be allowed") - except: + except Exception: self.assertEqual(sheet.getAlias("A2"),None) def testClearAlias(self): @@ -783,7 +783,7 @@ class SpreadsheetCases(unittest.TestCase): sheet = self.doc.addObject("Spreadsheet::Sheet","Calc") try: sheet.setAlias("A1","B1") - except: + except Exception: self.assertEqual(sheet.getAlias("A1"),None) else: self.fail("A cell address was used as alias which shouldn't be allowed") @@ -793,7 +793,7 @@ class SpreadsheetCases(unittest.TestCase): sheet = self.doc.addObject("Spreadsheet::Sheet","Calc") try: sheet.setAlias("A1","mA") - except: + except Exception: self.assertEqual(sheet.getAlias("A1"), None) else: self.fail("A unit (reserved word) was used as alias which shouldn't be allowed") diff --git a/src/Mod/Test/BaseTests.py b/src/Mod/Test/BaseTests.py index d7bdd0c7a4..941efca5b1 100644 --- a/src/Mod/Test/BaseTests.py +++ b/src/Mod/Test/BaseTests.py @@ -37,7 +37,7 @@ class ConsoleTestCase(unittest.TestCase): # http://python-kurs.eu/threads.php try: import _thread as thread, time - except: + except Exception: import thread, time def adder(): lock.acquire() @@ -58,7 +58,7 @@ class ConsoleTestCase(unittest.TestCase): # http://python-kurs.eu/threads.php try: import _thread as thread, time - except: + except Exception: import thread, time def adder(): self.count=self.count+1 diff --git a/src/Mod/Test/Document.py b/src/Mod/Test/Document.py index 538f8212f1..e41375cb4f 100644 --- a/src/Mod/Test/Document.py +++ b/src/Mod/Test/Document.py @@ -122,7 +122,7 @@ class DocumentBasicCases(unittest.TestCase): # test read only mechanismus try: self.Doc.UndoCount = 3 - except: + except Exception: FreeCAD.Console.PrintLog(" exception thrown, OK\n") else: self.fail("no exception thrown") @@ -167,7 +167,7 @@ class DocumentBasicCases(unittest.TestCase): self.failUnless(L1.Enum == "Two", "Different value to 'Two'") try: L1.Enum = "SurelyNotInThere!" - except: + except Exception: FreeCAD.Console.PrintLog(" exception thrown, OK\n") else: self.fail("no exception thrown") @@ -218,7 +218,7 @@ class DocumentBasicCases(unittest.TestCase): self.Doc.removeObject(L1.Name) try: L1.Name - except: + except Exception: self.failUnless(True) else: self.failUnless(False) @@ -232,7 +232,7 @@ class DocumentBasicCases(unittest.TestCase): self.Doc.undo() try: L2.Name - except: + except Exception: self.failUnless(True) else: self.failUnless(False) @@ -251,7 +251,7 @@ class DocumentBasicCases(unittest.TestCase): grp.addObject(obj) self.failUnless(len(grp.Group) == 1) self.failUnless(grp.Group[0] == obj) - except: + except Exception: self.failUnless(False) #test if the method override works @@ -268,7 +268,7 @@ class DocumentBasicCases(unittest.TestCase): self.failUnless(grp2.hasExtension("App::GroupExtension")) grp2.addObject(obj) self.failUnless(len(grp2.Group) == 0) - except: + except Exception: self.failUnless(True) self.Doc.removeObject(grp.Name) @@ -456,7 +456,7 @@ class DocumentSaveRestoreCases(unittest.TestCase): Active = FreeCAD.activeDocument() # Second is still a valid object self.failUnless(Second != Active) - except: + except Exception: # Okay, no document open self.failUnless(True) @@ -925,7 +925,7 @@ class DocumentGroupCases(unittest.TestCase): # Adding the group to itself must fail try: G1.addObject(G1) - except: + except Exception: FreeCAD.Console.PrintLog("Cannot add group to itself, OK\n") else: self.fail("Adding the group to itself must not be possible") @@ -1027,7 +1027,7 @@ class DocumentGroupCases(unittest.TestCase): grp = prt1.Group grp.append(obj1) prt1.Group = grp - except: + except Exception: grp.remove(obj1) self.failUnless(prt1.Group == grp) else: @@ -1039,7 +1039,7 @@ class DocumentGroupCases(unittest.TestCase): grp.append(obj1) try: grp1.Group = grp - except: + except Exception: pass else: self.fail("No exception thrown when object is in multiple Groups") @@ -1080,7 +1080,7 @@ class DocumentGroupCases(unittest.TestCase): prt2.Group = [] try: prt2.Group = [prt2] - except: + except Exception: pass else: self.fail("Exception is expected") @@ -1167,7 +1167,7 @@ class DocumentPlatformCases(unittest.TestCase): self.Doc = FreeCAD.open(self.DocName) self.failUnless(self.Doc.Points.Points.count() == 0) - except: + except Exception: pass def tearDown(self): diff --git a/src/Mod/Test/Gui/qtunittest.py b/src/Mod/Test/Gui/qtunittest.py index b6412dca59..9a0c1928b1 100755 --- a/src/Mod/Test/Gui/qtunittest.py +++ b/src/Mod/Test/Gui/qtunittest.py @@ -77,7 +77,7 @@ class BaseGUITestRunner: self.__rollbackImporter = RollbackImporter() try: test = unittest.defaultTestLoader.loadTestsFromName(testName) - except: + except Exception: exc_type, exc_value, exc_tb = sys.exc_info() #apply(traceback.print_exception,sys.exc_info()) traceback.print_exception(*sys.exc_info()) diff --git a/src/Mod/Test/unittestgui.py b/src/Mod/Test/unittestgui.py index 6e93079b89..b24ae33364 100755 --- a/src/Mod/Test/unittestgui.py +++ b/src/Mod/Test/unittestgui.py @@ -73,7 +73,7 @@ class BaseGUITestRunner: self.__rollbackImporter = RollbackImporter() try: test = unittest.defaultTestLoader.loadTestsFromName(testName) - except: + except Exception: exc_type, exc_value, exc_tb = sys.exc_info() traceback.print_exception(*sys.exc_info()) self.errorDialog("Unable to run test '%s'" % testName, diff --git a/src/Mod/Tux/PersistentToolbarsGui.py b/src/Mod/Tux/PersistentToolbarsGui.py index 1f20e75ffe..7f8f7d119b 100644 --- a/src/Mod/Tux/PersistentToolbarsGui.py +++ b/src/Mod/Tux/PersistentToolbarsGui.py @@ -37,13 +37,13 @@ def pythonToolbars(): if hasattr(Gui, "draftToolBar"): try: Gui.draftToolBar.Activated() - except: + except Exception: m = "Persistent toolbars: draftToolBar toolbar not managed.\n" App.Console.PrintMessage(m) if hasattr(Gui, "Snapper"): try: Gui.Snapper.show() - except: + except Exception: m = "Persistent toolbars: Snapper toolbar not managed.\n" App.Console.PrintMessage(m) else: