diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | monitor_mm.c | 11 |
2 files changed, 16 insertions, 3 deletions
@@ -15,6 +15,12 @@ - stevesk@cvs.openbsd.org 2002/06/27 19:49:08 [ssh-keyscan.c] use convtime(); ok markus@ + - millert@cvs.openbsd.org 2002/06/28 01:49:31 + [monitor_mm.c] + tree(3) wants an int return value for its compare functions and + the difference between two pointers is not an int. Just do the + safest thing and store the result in a long and then return 0, + -1, or 1 based on that result. 20020702 - (djm) Use PAM_MSG_MEMBER for PAM_TEXT_INFO messages, use xmalloc & @@ -1223,4 +1229,4 @@ - (stevesk) entropy.c: typo in debug message - (djm) ssh-keygen -i needs seeded RNG; report from markus@ -$Id: ChangeLog,v 1.2319 2002/07/04 00:07:13 mouring Exp $ +$Id: ChangeLog,v 1.2320 2002/07/04 00:08:23 mouring Exp $ diff --git a/monitor_mm.c b/monitor_mm.c index c363036e..f72a180e 100644 --- a/monitor_mm.c +++ b/monitor_mm.c @@ -24,7 +24,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: monitor_mm.c,v 1.6 2002/06/04 23:05:49 markus Exp $"); +RCSID("$OpenBSD: monitor_mm.c,v 1.7 2002/06/28 01:49:31 millert Exp $"); #ifdef HAVE_SYS_MMAN_H #include <sys/mman.h> @@ -38,7 +38,14 @@ RCSID("$OpenBSD: monitor_mm.c,v 1.6 2002/06/04 23:05:49 markus Exp $"); static int mm_compare(struct mm_share *a, struct mm_share *b) { - return ((char *)a->address - (char *)b->address); + long diff = (char *)a->address - (char *)b->address; + + if (diff == 0) + return (0); + else if (diff < 0) + return (-1); + else + return (1); } RB_GENERATE(mmtree, mm_share, next, mm_compare) |