mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-22 19:22:50 -06:00
fix the handling of PGF_EXN_OTHER_ERROR
This commit is contained in:
@@ -20,8 +20,6 @@ PgfExnType handleError(PgfExn err)
|
|||||||
} else if (err.type == PGF_EXN_PGF_ERROR) {
|
} else if (err.type == PGF_EXN_PGF_ERROR) {
|
||||||
PyErr_SetString(PGFError, err.msg);
|
PyErr_SetString(PGFError, err.msg);
|
||||||
free((char *)err.msg);
|
free((char *)err.msg);
|
||||||
} else if (err.type == PGF_EXN_OTHER_ERROR) {
|
|
||||||
PyErr_SetString(PGFError, "an unknown error occured");
|
|
||||||
}
|
}
|
||||||
return err.type;
|
return err.type;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,13 +83,11 @@ _collect_cats(PgfItor *fn, PgfText *key, void *value, PgfExn *err)
|
|||||||
PyObject *py_name = PyUnicode_FromStringAndSize(name->text, name->size);
|
PyObject *py_name = PyUnicode_FromStringAndSize(name->text, name->size);
|
||||||
if (py_name == NULL) {
|
if (py_name == NULL) {
|
||||||
err->type = PGF_EXN_OTHER_ERROR;
|
err->type = PGF_EXN_OTHER_ERROR;
|
||||||
err->msg = "unable to create string from category";
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PyList_Append((PyObject*) clo->collection, py_name) != 0) {
|
if (PyList_Append((PyObject*) clo->collection, py_name) != 0) {
|
||||||
err->type = PGF_EXN_OTHER_ERROR;
|
err->type = PGF_EXN_OTHER_ERROR;
|
||||||
err->msg = "unable append category to list";
|
|
||||||
Py_DECREF(py_name);
|
Py_DECREF(py_name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -165,12 +163,11 @@ _collect_funs(PgfItor *fn, PgfText *key, void *value, PgfExn *err)
|
|||||||
PyObject *py_name = PyUnicode_FromStringAndSize(name->text, name->size);
|
PyObject *py_name = PyUnicode_FromStringAndSize(name->text, name->size);
|
||||||
if (py_name == NULL) {
|
if (py_name == NULL) {
|
||||||
err->type = PGF_EXN_OTHER_ERROR;
|
err->type = PGF_EXN_OTHER_ERROR;
|
||||||
err->msg = "unable to create string from function";
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PyList_Append((PyObject*) clo->collection, py_name) != 0) {
|
if (PyList_Append((PyObject*) clo->collection, py_name) != 0) {
|
||||||
err->type = PGF_EXN_OTHER_ERROR;
|
err->type = PGF_EXN_OTHER_ERROR;
|
||||||
err->msg = "unable append function to list";
|
|
||||||
Py_DECREF(py_name);
|
Py_DECREF(py_name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user