Commit 490a9e77 authored by Armin Rigo's avatar Armin Rigo

memset() with small memory sizes just kill us.

parent 46c81fa3
...@@ -540,7 +540,7 @@ PyFrame_New(PyThreadState *tstate, PyCodeObject *code, PyObject *globals, ...@@ -540,7 +540,7 @@ PyFrame_New(PyThreadState *tstate, PyCodeObject *code, PyObject *globals,
PyFrameObject *back = tstate->frame; PyFrameObject *back = tstate->frame;
PyFrameObject *f; PyFrameObject *f;
PyObject *builtins; PyObject *builtins;
int extras, ncells, nfrees; int extras, ncells, nfrees, i;
#ifdef Py_DEBUG #ifdef Py_DEBUG
if (code == NULL || globals == NULL || !PyDict_Check(globals) || if (code == NULL || globals == NULL || !PyDict_Check(globals) ||
...@@ -641,7 +641,9 @@ PyFrame_New(PyThreadState *tstate, PyCodeObject *code, PyObject *globals, ...@@ -641,7 +641,9 @@ PyFrame_New(PyThreadState *tstate, PyCodeObject *code, PyObject *globals,
f->f_nfreevars = nfrees; f->f_nfreevars = nfrees;
extras = f->f_nlocals + ncells + nfrees; extras = f->f_nlocals + ncells + nfrees;
memset(f->f_localsplus, 0, extras * sizeof(f->f_localsplus[0])); /* Tim said it's ok to replace memset */
for (i=0; i<extras; i++)
f->f_localsplus[i] = NULL;
f->f_valuestack = f->f_localsplus + extras; f->f_valuestack = f->f_localsplus + extras;
f->f_stacktop = f->f_valuestack; f->f_stacktop = f->f_valuestack;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment