@@ -1718,17 +1718,17 @@ wrap_strftime(PyObject *object, PyObject *format, PyObject *timetuple,
17181718 goto Done ;
17191719 {
17201720 PyObject * format ;
1721- PyObject * time = PyImport_ImportModule ("time" );
1721+ PyObject * strftime = _PyImport_GetModuleAttrString ("time" , "strftime " );
17221722
1723- if (time == NULL )
1723+ if (strftime == NULL )
17241724 goto Done ;
17251725 format = PyUnicode_FromString (PyBytes_AS_STRING (newfmt ));
17261726 if (format != NULL ) {
1727- result = _PyObject_CallMethodIdObjArgs ( time , & PyId_strftime ,
1727+ result = PyObject_CallFunctionObjArgs ( strftime ,
17281728 format , timetuple , NULL );
17291729 Py_DECREF (format );
17301730 }
1731- Py_DECREF (time );
1731+ Py_DECREF (strftime );
17321732 }
17331733 Done :
17341734 Py_XDECREF (freplacement );
@@ -1748,12 +1748,10 @@ static PyObject *
17481748time_time (void )
17491749{
17501750 PyObject * result = NULL ;
1751- PyObject * time = PyImport_ImportModule ( "time" );
1751+ PyObject * time = _PyImport_GetModuleAttrString ( "time" , "time" );
17521752
17531753 if (time != NULL ) {
1754- _Py_IDENTIFIER (time );
1755-
1756- result = _PyObject_CallMethodIdNoArgs (time , & PyId_time );
1754+ result = PyObject_CallNoArgs (time );
17571755 Py_DECREF (time );
17581756 }
17591757 return result ;
@@ -1765,31 +1763,21 @@ time_time(void)
17651763static PyObject *
17661764build_struct_time (int y , int m , int d , int hh , int mm , int ss , int dstflag )
17671765{
1768- PyObject * time ;
1766+ PyObject * struct_time ;
17691767 PyObject * result ;
1770- _Py_IDENTIFIER (struct_time );
1771- PyObject * args ;
17721768
1773-
1774- time = PyImport_ImportModule ("time" );
1775- if (time == NULL ) {
1769+ struct_time = _PyImport_GetModuleAttrString ("time" , "struct_time" );
1770+ if (struct_time == NULL ) {
17761771 return NULL ;
17771772 }
17781773
1779- args = Py_BuildValue ( " iiiiiiiii" ,
1774+ result = PyObject_CallFunction ( struct_time , "(( iiiiiiiii)) " ,
17801775 y , m , d ,
17811776 hh , mm , ss ,
17821777 weekday (y , m , d ),
17831778 days_before_month (y , m ) + d ,
17841779 dstflag );
1785- if (args == NULL ) {
1786- Py_DECREF (time );
1787- return NULL ;
1788- }
1789-
1790- result = _PyObject_CallMethodIdOneArg (time , & PyId_struct_time , args );
1791- Py_DECREF (time );
1792- Py_DECREF (args );
1780+ Py_DECREF (struct_time );
17931781 return result ;
17941782}
17951783
0 commit comments