PyObject * psyco_DateFromTicks(PyObject *self, PyObject *args) { PyObject *res = NULL; struct tm tm; time_t t; double ticks; if (!PyArg_ParseTuple(args, "d", &ticks)) return NULL; t = (time_t)floor(ticks); if (localtime_r(&t, &tm)) { args = Py_BuildValue("iii", tm.tm_year+1900, tm.tm_mon+1, tm.tm_mday); if (args) { res = psyco_Date(self, args); Py_DECREF(args); } } else { PyErr_SetString(InterfaceError, "failed localtime call"); } return res; }
PyObject * psyco_DateFromTicks(PyObject *self, PyObject *args) { PyObject *res = NULL; struct tm tm; time_t t; double ticks; if (!PyArg_ParseTuple(args, "d", &ticks)) return NULL; t = (time_t)round(ticks); if (localtime_r(&t, &tm)) { args = Py_BuildValue("iii", tm.tm_year+1900, tm.tm_mon+1, tm.tm_mday); if (args) { res = psyco_Date(self, args); Py_DECREF(args); } } return res; }