libuv/src
Bert Belder 48d39345bc win: avoid stack corruption when closing a poll handle
When the user closes an uv_poll_t handle, there may still be an
outstanding AFD_POLL request. Libuv can't cancel this AFD_POLL request
directly, so it has to submit another which makes the the previous
poll request return.

Libuv completely forgets about the "canceling" AFD_POLL request, but
at some point in time it may complete and store its result somewhere in
memory.

Without this patch the result of the canceling poll request is written
somewhere on the stack, which sometimes causes stack corruption. This
patch ensures that the result is written to some static scratch space
where it can do no harm.

PR-URL: https://github.com/libuv/libuv/pull/49
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Marc Schlaich <marc.schlaich@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2014-12-10 16:44:28 +01:00
..
unix unix, windows: add uv_loop_configure() function 2014-12-05 17:39:43 +01:00
win win: avoid stack corruption when closing a poll handle 2014-12-10 16:44:28 +01:00
fs-poll.c unix, windows: make uv_fs_t.statbuf public 2013-02-10 17:50:03 +01:00
inet.c Revert "inet: allow scope in uv_inet_pton ip6 check" 2014-04-14 15:13:20 +04:00
uv-common.c unix, windows: add uv_loop_configure() function 2014-12-05 17:39:43 +01:00
uv-common.h unix, windows: add uv_loop_configure() function 2014-12-05 17:39:43 +01:00
version.c Now working on v0.10.31 2014-12-09 19:49:50 +01:00