diff -r e5d963cb6afc Lib/turtle.py --- a/Lib/turtle.py Sat May 24 00:32:29 2014 +0200 +++ b/Lib/turtle.py Tue May 27 20:15:37 2014 -0700 @@ -3753,7 +3753,7 @@ Turtle._screen = None _Screen._root = None _Screen._canvas = None - TurtleScreen._RUNNING = True + TurtleScreen._RUNNING = False root.destroy() def bye(self): @@ -3967,8 +3967,12 @@ if pl1 == "": print(">>>>>>", pl1, pl2) continue - defstr = ("def %(key)s%(pl1)s: return _getpen().%(key)s%(pl2)s" % - {'key':methodname, 'pl1':pl1, 'pl2':pl2}) + defstr = ( + """def %(key)s%(pl1)s: + try: + return _getpen().%(key)s%(pl2)s + except Terminator: + return None""" % {'key':methodname, 'pl1':pl1, 'pl2':pl2}) exec(defstr) eval(methodname).__doc__ = _turtle_docrevise(eval('Turtle.'+methodname).__doc__)