add some missing DISPATCH()

This commit is contained in:
Benjamin Peterson 2012-10-10 14:10:33 -04:00
parent fc2f641358
commit 00f86f2202
1 changed files with 16 additions and 9 deletions

View File

@ -1955,7 +1955,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
} }
} }
PUSH(x); PUSH(x);
break; DISPATCH();
} }
TARGET(STORE_NAME) TARGET(STORE_NAME)
@ -1977,11 +1977,13 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
TARGET(DELETE_NAME) TARGET(DELETE_NAME)
w = GETITEM(names, oparg); w = GETITEM(names, oparg);
if ((x = f->f_locals) != NULL) { if ((x = f->f_locals) != NULL) {
if ((err = PyObject_DelItem(x, w)) != 0) if ((err = PyObject_DelItem(x, w)) != 0) {
format_exc_check_arg(PyExc_NameError, format_exc_check_arg(PyExc_NameError,
NAME_ERROR_MSG, NAME_ERROR_MSG,
w); w);
break; break;
}
DISPATCH();
} }
PyErr_Format(PyExc_SystemError, PyErr_Format(PyExc_SystemError,
"no locals when deleting %R", w); "no locals when deleting %R", w);
@ -1999,8 +2001,6 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
Py_INCREF(w); Py_INCREF(w);
PUSH(w); PUSH(w);
} }
Py_DECREF(v);
DISPATCH();
} else if (PyList_CheckExact(v) && } else if (PyList_CheckExact(v) &&
PyList_GET_SIZE(v) == oparg) { PyList_GET_SIZE(v) == oparg) {
PyObject **items = \ PyObject **items = \
@ -2016,9 +2016,11 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
} else { } else {
/* unpack_iterable() raised an exception */ /* unpack_iterable() raised an exception */
why = WHY_EXCEPTION; why = WHY_EXCEPTION;
Py_DECREF(v);
break;
} }
Py_DECREF(v); Py_DECREF(v);
break; DISPATCH();
TARGET(UNPACK_EX) TARGET(UNPACK_EX)
{ {
@ -2029,10 +2031,12 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
stack_pointer + totalargs)) { stack_pointer + totalargs)) {
stack_pointer += totalargs; stack_pointer += totalargs;
} else { } else {
Py_DECREF(v);
why = WHY_EXCEPTION; why = WHY_EXCEPTION;
break;
} }
Py_DECREF(v); Py_DECREF(v);
break; DISPATCH();
} }
TARGET(STORE_ATTR) TARGET(STORE_ATTR)
@ -2052,6 +2056,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
err = PyObject_SetAttr(v, w, (PyObject *)NULL); err = PyObject_SetAttr(v, w, (PyObject *)NULL);
/* del v.w */ /* del v.w */
Py_DECREF(v); Py_DECREF(v);
if (err == 0) DISPATCH();
break; break;
TARGET(STORE_GLOBAL) TARGET(STORE_GLOBAL)
@ -2064,10 +2069,12 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
TARGET(DELETE_GLOBAL) TARGET(DELETE_GLOBAL)
w = GETITEM(names, oparg); w = GETITEM(names, oparg);
if ((err = PyDict_DelItem(f->f_globals, w)) != 0) if ((err = PyDict_DelItem(f->f_globals, w)) != 0) {
format_exc_check_arg( format_exc_check_arg(
PyExc_NameError, GLOBAL_NAME_ERROR_MSG, w); PyExc_NameError, GLOBAL_NAME_ERROR_MSG, w);
break; break;
}
DISPATCH();
TARGET(LOAD_NAME) TARGET(LOAD_NAME)
w = GETITEM(names, oparg); w = GETITEM(names, oparg);