8000
We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 55b2516 commit 7353ed8Copy full SHA for 7353ed8
Modules/_testinternalcapi.c
@@ -762,19 +762,24 @@ clear_extension(PyObject *self, PyObject *args)
762
static PyObject *
763
write_perf_map_entry(PyObject *self, PyObject *args)
764
{
765
+ PyObject *code_addr_v;
766
const void *code_addr;
767
unsigned int code_size;
768
const char *entry_name;
769
- if (!PyArg_ParseTuple(args, "KIs", &code_addr, &code_size, &entry_name))
770
+ if (!PyArg_ParseTuple(args, "OIs", &code_addr_v, &code_size, &entry_name))
771
return NULL;
772
+ code_addr = PyLong_AsVoidPtr(code_addr_v);
773
+ if (code_addr == NULL) {
774
+ return NULL;
775
+ }
776
777
int ret = PyUnstable_WritePerfMapEntry(code_addr, code_size, entry_name);
- if (ret == -1) {
- PyErr_SetString(PyExc_OSError, "Failed to write performance map entry");
778
+ if (ret < 0) {
779
+ PyErr_SetFromErrno(PyExc_OSError);
780
781
}
- return Py_BuildValue("i", ret);
782
+ return PyLong_FromLong(ret);
783
784
785