aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cynapses.org>2010-08-18 22:06:59 +0200
committerAndreas Schneider <asn@cynapses.org>2010-08-25 23:11:54 +0200
commit11a5383604c66a4553a202184d78df2328450521 (patch)
treeaadaae96877220d20bc4a09765a8e1b2834c55d1
parentd99160649363da544537638e28672f90352d86a6 (diff)
downloadlibssh-11a5383604c66a4553a202184d78df2328450521.tar.gz
libssh-11a5383604c66a4553a202184d78df2328450521.tar.xz
libssh-11a5383604c66a4553a202184d78df2328450521.zip
poll: Fixed the ssh_poll_(init/cleanup) functions.
-rw-r--r--libssh/poll.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libssh/poll.c b/libssh/poll.c
index a843657b..1e6b5ff8 100644
--- a/libssh/poll.c
+++ b/libssh/poll.c
@@ -262,6 +262,8 @@ static int bsd_poll(ssh_pollfd_t *fds, nfds_t nfds, int timeout) {
}
void ssh_poll_init(void) {
+ ssh_poll_emu = bsd_poll;
+
#ifdef _WIN32
hlib = LoadLibrary(WS2_LIBRARY);
if (hlib != NULL) {
@@ -269,20 +271,20 @@ void ssh_poll_init(void) {
}
#endif /* _WIN32 */
- if (wsa_poll == NULL) {
+ if (wsa_poll != NULL) {
ssh_poll_emu = bsd_poll;
- } else {
- ssh_poll_emu = win_poll;
}
}
void ssh_poll_cleanup(void) {
ssh_poll_emu = bsd_poll;
+#ifdef _WIN32
wsa_poll = NULL;
FreeLibrary(hlib);
hlib = NULL;
+#endif /* _WIN32 */
}
int ssh_poll(ssh_pollfd_t *fds, nfds_t nfds, int timeout) {