From 4aacab4b77392a68d5ff15dac71f093042508346 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Thu, 15 Sep 2005 10:46:18 +0000 Subject: backport bug [ 868706 ] Calling builtin function 'eval' from C causes seg fault. --- Python/bltinmodule.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 9466cca..052ff3c 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -479,6 +479,13 @@ builtin_eval(PyObject *self, PyObject *args) else if (locals == Py_None) locals = globals; + if (globals == NULL || locals == NULL) { + PyErr_SetString(PyExc_TypeError, + "eval must be given globals and locals " + "when called without a frame"); + return NULL; + } + if (PyDict_GetItemString(globals, "__builtins__") == NULL) { if (PyDict_SetItemString(globals, "__builtins__", PyEval_GetBuiltins()) != 0) -- cgit v0.12