Kaydet (Commit) 8798ad3e authored tarafından Brett Cannon's avatar Brett Cannon

struct timeval.tv_usec is 4 bytes on 64-bit OS X as it should be, but

is defined as an int while everyone else expects a long regardless of
length.
üst 014397e9
......@@ -237,8 +237,12 @@ select_select(PyObject *self, PyObject *args)
#endif
tv.tv_sec = (long)sec;
#else
if (_PyTime_ObjectToTimeval(tout, &tv.tv_sec, &tv.tv_usec) == -1)
/* 64-bit OS X has struct timeval.tv_usec as an int (and thus still 4
bytes as required), but no longer defined by a long. */
long tv_usec = tv.tv_usec;
if (_PyTime_ObjectToTimeval(tout, &tv.tv_sec, &tv_usec) == -1)
return NULL;
tv.tv_usec = tv_usec;
#endif
if (tv.tv_sec < 0) {
PyErr_SetString(PyExc_ValueError, "timeout must be non-negative");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment