diff options
-rw-r--r-- | Changes | 1 | ||||
-rw-r--r-- | ev.c | 6 |
2 files changed, 3 insertions, 4 deletions
@@ -37,6 +37,7 @@ TODO: ev_feed_child_event works in all cases (unlike read/write/send/recv...). - try to detect signals around a fork faster (test program by Denis Bilenko). + - work around recent glibc versions that leak memory in realloc. 4.11 Sat Feb 4 19:52:39 CET 2012 - INCOMPATIBLE CHANGE: ev_timer_again now clears the pending status, as @@ -1193,12 +1193,11 @@ ev_syserr (const char *msg) static void * ev_realloc_emul (void *ptr, long size) EV_THROW { -#if __GLIBC__ - return realloc (ptr, size); -#else /* some systems, notably openbsd and darwin, fail to properly * implement realloc (x, 0) (as required by both ansi c-89 and * the single unix specification, so work around them here. + * recently, also (at least) fedora and debian started breaking it, + * despite documenting it otherwise. */ if (size) @@ -1206,7 +1205,6 @@ ev_realloc_emul (void *ptr, long size) EV_THROW free (ptr); return 0; -#endif } static void *(*alloc)(void *ptr, long size) EV_THROW = ev_realloc_emul; |