]> granicus.if.org Git - python/commitdiff
SF #506611, fix sys.setprofile(), sys.settrace() core dumps
authorNeal Norwitz <nnorwitz@gmail.com>
Sun, 3 Mar 2002 15:12:58 +0000 (15:12 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Sun, 3 Mar 2002 15:12:58 +0000 (15:12 +0000)
when no arguments are passed

Lib/test/test_profilehooks.py
Lib/test/test_scope.py
Python/sysmodule.c

index cc97df8dc4512cbe794118ee4a0bccea338e00de..fa38d3047c7dee56c688819769e642143be7c1ff 100644 (file)
@@ -1,5 +1,7 @@
 from __future__ import generators
 
+from test_support import TestFailed
+
 import pprint
 import sys
 import unittest
@@ -329,6 +331,10 @@ protect_ident = ident(protect)
 
 
 def capture_events(callable, p=None):
+    try: sys.setprofile()
+    except TypeError: pass
+    else: raise TestFailed, 'sys.setprofile() did not raise TypeError'
+
     if p is None:
         p = HookWatcher()
     sys.setprofile(p.callback)
index bb29f8b9a75aeab431886b639497214dfadf7bac..85cfed4749b669024999d915cc57522e40a218a6 100644 (file)
@@ -471,6 +471,10 @@ sys.settrace(tracer)
 adaptgetter("foo", TestClass, (1, ""))
 sys.settrace(None)
 
+try: sys.settrace()
+except TypeError: pass
+else: raise TestFailed, 'sys.settrace() did not raise TypeError'
+
 print "20. eval and exec with free variables"
 
 def f(x):
index 90338dea35979d636c41bf0861622db0ca476416..3448e6a9d36c26ee197b4bde0251fca2fd677e07 100644 (file)
@@ -564,10 +564,10 @@ static PyMethodDef sys_methods[] = {
        {"setdlopenflags", sys_setdlopenflags, METH_VARARGS, 
         setdlopenflags_doc},
 #endif
-       {"setprofile",  sys_setprofile, METH_OLDARGS, setprofile_doc},
+       {"setprofile",  sys_setprofile, METH_O, setprofile_doc},
        {"setrecursionlimit", sys_setrecursionlimit, METH_VARARGS,
         setrecursionlimit_doc},
-       {"settrace",    sys_settrace, METH_OLDARGS, settrace_doc},
+       {"settrace",    sys_settrace, METH_O, settrace_doc},
        {NULL,          NULL}           /* sentinel */
 };