未验证 提交 2134876c 编写于 作者: W wanghuancoder 提交者: GitHub

fix PyObject_CheckFloatOrToFloat (#44967)

上级 230f3dac
...@@ -87,7 +87,8 @@ bool PyObject_CheckLongOrToLong(PyObject** obj) { ...@@ -87,7 +87,8 @@ bool PyObject_CheckLongOrToLong(PyObject** obj) {
bool PyObject_CheckFloatOrToFloat(PyObject** obj) { bool PyObject_CheckFloatOrToFloat(PyObject** obj) {
// sometimes users provide PyLong or numpy.int64 but attr is float // sometimes users provide PyLong or numpy.int64 but attr is float
if (PyFloat_Check(*obj) || PyLong_Check(*obj) || if (PyFloat_Check(*obj) || PyLong_Check(*obj) ||
PyObject_IsInstance(*obj, (PyObject*)g_varbase_pytype)) { // NOLINT PyObject_IsInstance(*obj, (PyObject*)g_varbase_pytype) || // NOLINT
PyObject_IsInstance(*obj, (PyObject*)p_tensor_type)) { // NOLINT
return true; return true;
} }
if (std::string(((PyTypeObject*)(*obj)->ob_type)->tp_name) // NOLINT if (std::string(((PyTypeObject*)(*obj)->ob_type)->tp_name) // NOLINT
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册