@@ -33,35 +33,35 @@ _get_current(void)
3333}
3434
3535static int64_t
36- _coerce_id (PyObject * id )
36+ _coerce_id (PyObject * orig )
3737{
38- id = PyNumber_Long (id );
39- if (id == NULL ) {
38+ PyObject * pyid = PyNumber_Long (orig );
39+ if (pyid == NULL ) {
4040 if (PyErr_ExceptionMatches (PyExc_TypeError )) {
41- PyErr_SetString (PyExc_TypeError ,
42- "'id' must be a non-negative int" );
41+ PyErr_Format (PyExc_TypeError ,
42+ "'id' must be a non-negative int, got %R" , orig );
4343 }
4444 else {
45- PyErr_SetString (PyExc_ValueError ,
46- "'id' must be a non-negative int" );
45+ PyErr_Format (PyExc_ValueError ,
46+ "'id' must be a non-negative int, got %R" , orig );
4747 }
4848 return -1 ;
4949 }
50- int64_t cid = PyLong_AsLongLong (id );
51- Py_DECREF (id );
52- if (cid == -1 && PyErr_Occurred () != NULL ) {
50+ int64_t id = PyLong_AsLongLong (pyid );
51+ Py_DECREF (pyid );
52+ if (id == -1 && PyErr_Occurred () != NULL ) {
5353 if (!PyErr_ExceptionMatches (PyExc_OverflowError )) {
54- PyErr_SetString (PyExc_ValueError ,
55- "'id' must be a non-negative int" );
54+ PyErr_Format (PyExc_ValueError ,
55+ "'id' must be a non-negative int, got %R" , orig );
5656 }
5757 return -1 ;
5858 }
59- if (cid < 0 ) {
60- PyErr_SetString (PyExc_ValueError ,
61- "'id' must be a non-negative int" );
59+ if (id < 0 ) {
60+ PyErr_Format (PyExc_ValueError ,
61+ "'id' must be a non-negative int, got %R" , orig );
6262 return -1 ;
6363 }
64- return cid ;
64+ return id ;
6565}
6666
6767
@@ -1000,11 +1000,11 @@ _channels_lookup(_channels *channels, int64_t id, PyThread_type_lock *pmutex)
10001000
10011001 _channelref * ref = _channelref_find (channels -> head , id , NULL );
10021002 if (ref == NULL ) {
1003- PyErr_Format (ChannelNotFoundError , "channel %d not found" , id );
1003+ PyErr_Format (ChannelNotFoundError , "channel %lld not found" , id );
10041004 goto done ;
10051005 }
10061006 if (ref -> chan == NULL || !ref -> chan -> open ) {
1007- PyErr_Format (ChannelClosedError , "channel %d closed" , id );
1007+ PyErr_Format (ChannelClosedError , "channel %lld closed" , id );
10081008 goto done ;
10091009 }
10101010
@@ -1064,24 +1064,25 @@ _channels_close(_channels *channels, int64_t cid, _PyChannelState **pchan,
10641064
10651065 _channelref * ref = _channelref_find (channels -> head , cid , NULL );
10661066 if (ref == NULL ) {
1067- PyErr_Format (ChannelNotFoundError , "channel %d not found" , cid );
1067+ PyErr_Format (ChannelNotFoundError , "channel %lld not found" , cid );
10681068 goto done ;
10691069 }
10701070
10711071 if (ref -> chan == NULL ) {
1072- PyErr_Format (ChannelClosedError , "channel %d closed" , cid );
1072+ PyErr_Format (ChannelClosedError , "channel %lld closed" , cid );
10731073 goto done ;
10741074 }
10751075 else if (!force && end == CHANNEL_SEND && ref -> chan -> closing != NULL ) {
1076- PyErr_Format (ChannelClosedError , "channel %d closed" , cid );
1076+ PyErr_Format (ChannelClosedError , "channel %lld closed" , cid );
10771077 goto done ;
10781078 }
10791079 else {
10801080 if (_channel_close_all (ref -> chan , end , force ) != 0 ) {
10811081 if (end == CHANNEL_SEND &&
10821082 PyErr_ExceptionMatches (ChannelNotEmptyError )) {
10831083 if (ref -> chan -> closing != NULL ) {
1084- PyErr_Format (ChannelClosedError , "channel %d closed" , cid );
1084+ PyErr_Format (ChannelClosedError ,
1085+ "channel %lld closed" , cid );
10851086 goto done ;
10861087 }
10871088 // Mark the channel as closing and return. The channel
@@ -1143,7 +1144,7 @@ _channels_remove(_channels *channels, int64_t id, _PyChannelState **pchan)
11431144 _channelref * prev = NULL ;
11441145 _channelref * ref = _channelref_find (channels -> head , id , & prev );
11451146 if (ref == NULL ) {
1146- PyErr_Format (ChannelNotFoundError , "channel %d not found" , id );
1147+ PyErr_Format (ChannelNotFoundError , "channel %lld not found" , id );
11471148 goto done ;
11481149 }
11491150
@@ -1163,7 +1164,7 @@ _channels_add_id_object(_channels *channels, int64_t id)
11631164
11641165 _channelref * ref = _channelref_find (channels -> head , id , NULL );
11651166 if (ref == NULL ) {
1166- PyErr_Format (ChannelNotFoundError , "channel %d not found" , id );
1167+ PyErr_Format (ChannelNotFoundError , "channel %lld not found" , id );
11671168 goto done ;
11681169 }
11691170 ref -> objcount += 1 ;
@@ -1327,7 +1328,7 @@ _channel_send(_channels *channels, int64_t id, PyObject *obj)
13271328 // Past this point we are responsible for releasing the mutex.
13281329
13291330 if (chan -> closing != NULL ) {
1330- PyErr_Format (ChannelClosedError , "channel %d closed" , id );
1331+ PyErr_Format (ChannelClosedError , "channel %lld closed" , id );
13311332 PyThread_release_lock (mutex );
13321333 return -1 ;
13331334 }
@@ -1376,7 +1377,7 @@ _channel_recv(_channels *channels, int64_t id)
13761377 PyThread_release_lock (mutex );
13771378 if (data == NULL ) {
13781379 if (!PyErr_Occurred ()) {
1379- PyErr_Format (ChannelEmptyError , "channel %d is empty" , id );
1380+ PyErr_Format (ChannelEmptyError , "channel %lld is empty" , id );
13801381 }
13811382 return NULL ;
13821383 }
@@ -1526,13 +1527,13 @@ channelid_repr(PyObject *self)
15261527 channelid * cid = (channelid * )self ;
15271528 const char * fmt ;
15281529 if (cid -> end == CHANNEL_SEND ) {
1529- fmt = "%s(%d , send=True)" ;
1530+ fmt = "%s(%lld , send=True)" ;
15301531 }
15311532 else if (cid -> end == CHANNEL_RECV ) {
1532- fmt = "%s(%d , recv=True)" ;
1533+ fmt = "%s(%lld , recv=True)" ;
15331534 }
15341535 else {
1535- fmt = "%s(%d )" ;
1536+ fmt = "%s(%lld )" ;
15361537 }
15371538 return PyUnicode_FromFormat (fmt , name , cid -> id );
15381539}
@@ -1541,7 +1542,7 @@ static PyObject *
15411542channelid_str (PyObject * self )
15421543{
15431544 channelid * cid = (channelid * )self ;
1544- return PyUnicode_FromFormat ("%d " , cid -> id );
1545+ return PyUnicode_FromFormat ("%lld " , cid -> id );
15451546}
15461547
15471548PyObject *
@@ -2046,14 +2047,14 @@ interpid_repr(PyObject *self)
20462047 PyTypeObject * type = Py_TYPE (self );
20472048 const char * name = _PyType_Name (type );
20482049 interpid * id = (interpid * )self ;
2049- return PyUnicode_FromFormat ("%s(%d )" , name , id -> id );
2050+ return PyUnicode_FromFormat ("%s(%lld )" , name , id -> id );
20502051}
20512052
20522053static PyObject *
20532054interpid_str (PyObject * self )
20542055{
20552056 interpid * id = (interpid * )self ;
2056- return PyUnicode_FromFormat ("%d " , id -> id );
2057+ return PyUnicode_FromFormat ("%lld " , id -> id );
20572058}
20582059
20592060PyObject *
0 commit comments