我将 cpython 和 v8 嵌入在一起,并且在将 javascript 数据转换为PyDateTime
via时遇到了段错误PyDateTime_FromTimestamp
:
Handle<Date> date = Handle<Date>::Cast(value);
printf("%d\n", 8);
PyObject* floatObj = PyFloat_FromDouble(date->NumberValue());
printf("%d\n", 9);
printf("%d\n", floatObj);
PyObject* timeTuple = Py_BuildValue("(O)", floatObj);
Py_DECREF(floatObj);
printf("%d\n", 10);
PyObject* dateTime = PyDateTime_FromTimestamp(timeTuple);
printf("%d\n", 11);
Py_DECREF(timeTuple);
printf("%d\n", 12);
运行时我得到以下输出:
8
9
14709864
10
[1] 33794 segmentation fault
timeTuple
关于为什么似乎会导致PyDateTime_FromTimestamp
错误的任何见解?
字符串、数字、布尔值、数组、字典等的转换都可以正常工作。