Issue #13964: signal.sigtimedwait() timeout is now a float instead of a tuple

Add a private API to convert an int or float to a C timespec structure.
This commit is contained in:
Victor Stinner 2012-03-02 22:54:03 +01:00
parent 1c13f84f55
commit 643cd68ea4
7 changed files with 106 additions and 20 deletions

View file

@ -3,6 +3,7 @@
#define Py_PYTIME_H
#include "pyconfig.h" /* include for defines */
#include "object.h"
/**************************************************************************
Symbols and macros to supply platform-independent interfaces to time related
@ -37,6 +38,16 @@ do { \
((tv_end.tv_sec - tv_start.tv_sec) + \
(tv_end.tv_usec - tv_start.tv_usec) * 0.000001)
#ifndef Py_LIMITED_API
/* Convert a number of seconds, int or float, to a timespec structure.
nsec is always in the range [0; 999999999]. For example, -1.2 is converted
to (-2, 800000000). */
PyAPI_FUNC(int) _PyTime_ObjectToTimespec(
PyObject *obj,
time_t *sec,
long *nsec);
#endif
/* Dummy to force linking. */
PyAPI_FUNC(void) _PyTime_Init(void);