diff --git a/Tools/gdb/libpython.py b/Tools/gdb/libpython.py
index 7726020..f62735f 100644
--- a/Tools/gdb/libpython.py
+++ b/Tools/gdb/libpython.py
@@ -1148,18 +1148,17 @@
 
     def is_evalframeex(self):
         '''Is this a PyEval_EvalFrameEx frame?'''
-        if self._gdbframe.function():
-            if self._gdbframe.name() == 'PyEval_EvalFrameEx':
-                '''
-                I believe we also need to filter on the inline
-                struct frame_id.inline_depth, only regarding frames with
-                an inline depth of 0 as actually being this function
+        if self._gdbframe.name() == 'PyEval_EvalFrameEx':
+            '''
+            I believe we also need to filter on the inline
+            struct frame_id.inline_depth, only regarding frames with
+            an inline depth of 0 as actually being this function
 
-                So we reject those with type gdb.INLINE_FRAME
-                '''
-                if self._gdbframe.type() == gdb.NORMAL_FRAME:
-                    # We have a PyEval_EvalFrameEx frame:
-                    return True
+            So we reject those with type gdb.INLINE_FRAME
+            '''
+            if self._gdbframe.type() == gdb.NORMAL_FRAME:
+                # We have a PyEval_EvalFrameEx frame:
+                return True
 
         return False
 
@@ -1309,8 +1308,6 @@
     def invoke(self, args, from_tty):
         move_in_stack(move_up=True)
 
-PyUp()
-
 class PyDown(gdb.Command):
     'Select and print the python stack frame called by this one (if any)'
     def __init__(self):
@@ -1323,7 +1320,10 @@
     def invoke(self, args, from_tty):
         move_in_stack(move_up=False)
 
-PyDown()
+# Not all builds of gdb have gdb.Frame.select
+if hasattr(gdb.Frame, 'select'):
+    PyUp()
+    PyDown()
 
 class PyBacktrace(gdb.Command):
     'Display the current python frame and all the frames within its call stack (if any)'
