summaryrefslogtreecommitdiff
path: root/Modules/resource.c
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2013-07-22 22:24:54 +0200
committerVictor Stinner <victor.stinner@gmail.com>2013-07-22 22:24:54 +0200
commit1c8f059019d79f1891f42a2656a96919a1187967 (patch)
treebcec768e9ca0d0e1e9e1ab80e0dfc0fe29ae758d /Modules/resource.c
parent2a545099f7ed45de1d45b45200d82c6298b75d2b (diff)
downloadcpython-git-1c8f059019d79f1891f42a2656a96919a1187967.tar.gz
Issue #18520: Add a new PyStructSequence_InitType2() function, same than
PyStructSequence_InitType() except that it has a return value (0 on success, -1 on error). * PyStructSequence_InitType2() now raises MemoryError on memory allocation failure * Fix also some calls to PyDict_SetItemString(): handle error
Diffstat (limited to 'Modules/resource.c')
-rw-r--r--Modules/resource.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/Modules/resource.c b/Modules/resource.c
index 4411225055..8768315372 100644
--- a/Modules/resource.c
+++ b/Modules/resource.c
@@ -263,9 +263,12 @@ PyInit_resource(void)
/* Add some symbolic constants to the module */
Py_INCREF(PyExc_OSError);
PyModule_AddObject(m, "error", PyExc_OSError);
- if (!initialized)
- PyStructSequence_InitType(&StructRUsageType,
- &struct_rusage_desc);
+ if (!initialized) {
+ if (PyStructSequence_InitType2(&StructRUsageType,
+ &struct_rusage_desc) < 0)
+ return NULL;
+ }
+
Py_INCREF(&StructRUsageType);
PyModule_AddObject(m, "struct_rusage",
(PyObject*) &StructRUsageType);