guix-play/gnu/packages/patches/guile-fibers-libevent-32-bit.patch
Ludovic Courtès 49119eee2b
gnu: guile-fibers: Add 1.3.1.
* gnu/packages/guile-xyz.scm (guile-fibers-1.3): New variable.
(guile-fibers-1.1): Inherit from it.
* gnu/packages/patches/guile-fibers-libevent-32-bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2023-06-14 22:53:55 +02:00

19 lines
575 B
Diff

This fixes a bug with the libevent backend on 32-bit platforms:
https://github.com/wingo/fibers/issues/86
diff --git a/extensions/libevent.c b/extensions/libevent.c
index 4f44de9..52c9d73 100644
--- a/extensions/libevent.c
+++ b/extensions/libevent.c
@@ -215,7 +215,8 @@ run_event_loop (void *p)
microsec = -1;
else if (data->timeout >= 0)
{
- microsec = data->timeout / time_units_per_microsec;
+ microsec = (time_units_per_microsec == 0)
+ ? 0 : data->timeout / time_units_per_microsec;
tv.tv_sec = 0;
tv.tv_usec = microsec;
}