Patch from Detlev revised to avoid an additional check on every call.

Mon, 10 Apr 2017 21:40:17 +0200

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Mon, 10 Apr 2017 21:40:17 +0200
changeset 5700
3bcd20e99b52
parent 5699
0e40b560dcd1
child 5702
034a25f62777

Patch from Detlev revised to avoid an additional check on every call.

DebugClients/Python/DebugBase.py file | annotate | diff | comparison | revisions
--- a/DebugClients/Python/DebugBase.py	Mon Apr 10 21:23:54 2017 +0200
+++ b/DebugClients/Python/DebugBase.py	Mon Apr 10 21:40:17 2017 +0200
@@ -578,22 +578,22 @@
         """
         # get module name from __file__
         fn = frame.f_globals.get('__file__')
-        if fn is not None:
-            try:
-                return self._fnCache[fn]
-            except KeyError:
-                absFilename = os.path.abspath(fn)
-                if absFilename.endswith(('.pyc', '.pyo')):
-                    fixedName = absFilename[:-1]
-                    if not os.path.exists(fixedName):
-                        fixedName = absFilename
-                else:
+        try:
+            return self._fnCache[fn]
+        except KeyError:
+            if fn is None:
+                return frame.f_code.co_filename
+            
+            absFilename = os.path.abspath(fn)
+            if absFilename.endswith(('.pyc', '.pyo')):
+                fixedName = absFilename[:-1]
+                if not os.path.exists(fixedName):
                     fixedName = absFilename
-                # update cache
-                self._fnCache[fn] = fixedName
-                return fixedName
-        else:
-            return frame.f_code.co_filename
+            else:
+                fixedName = absFilename
+            # update cache
+            self._fnCache[fn] = fixedName
+            return fixedName
 
     def __checkBreakInFrame(self, frame):
         """

eric ide

mercurial