summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/autoload.cc4
2 files changed, 7 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index ef4a624dc..42647b79a 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2011-02-05 Christopher Faylor <me+cygwin@cgf.cx>
+
+ * autoload.cc (wsock_init): Properly define WSAStartup function pointer
+ to avoid stack damage.
+
2011-02-02 Corinna Vinschen <corinna@vinschen.de>
* libc/bsdlib.cc: Include err.h.
diff --git a/winsup/cygwin/autoload.cc b/winsup/cygwin/autoload.cc
index 2e495ad6a..96de1439b 100644
--- a/winsup/cygwin/autoload.cc
+++ b/winsup/cygwin/autoload.cc
@@ -294,10 +294,10 @@ wsock_init ()
if (!wsock_started)
{
- int (*wsastartup) (int, WSADATA *);
+ int __stdcall (*wsastartup) (int, WSADATA *);
/* Don't use autoload to load WSAStartup to eliminate recursion. */
- wsastartup = (int (*)(int, WSADATA *))
+ wsastartup = (int __stdcall (*)(int, WSADATA *))
GetProcAddress ((HMODULE) (dll->handle), "WSAStartup");
if (wsastartup)
{