core: increase cookie field lengths to 64-bit; closes #545.

pull/564/head
David Wilson 5 years ago
parent e517810e5a
commit 7d0480e8bd

@ -139,6 +139,12 @@ Fixes
0.2.3 behaviour of defaulting to Kqueue in this case, but still prefer
:func:`select.poll` if it is available.
* `#545 <https://github.com/dw/mitogen/issues/545>`_: an optimization
introduced in `#493 <https://github.com/dw/mitogen/issues/493>`_ caused a
64-bit integer to be assigned to a 32-bit field on ARM 32-bit targets,
causing runs to fail.
Core Library
~~~~~~~~~~~~
@ -151,6 +157,7 @@ Thanks!
Mitogen would not be possible without the support of users. A huge thanks for
bug reports, testing, features and fixes in this release contributed by
`Fabian Arrotin <https://github.com/arrfab>`_, and
`Petr Enkov <https://github.com/enkov>`_.

@ -2140,7 +2140,7 @@ class Latch(object):
return rsock, wsock
COOKIE_MAGIC, = struct.unpack('L', b('LTCH') * (struct.calcsize('L')//4))
COOKIE_FMT = 'Llll'
COOKIE_FMT = '>Qqqq' # #545: id() and get_ident() may exceed long on armhfp.
COOKIE_SIZE = struct.calcsize(COOKIE_FMT)
def _make_cookie(self):

Loading…
Cancel
Save