]> git.saurik.com Git - wxWidgets.git/blobdiff - src/unix/gsocket.cpp
Applied patch to show title bar changes
[wxWidgets.git] / src / unix / gsocket.cpp
index 6aaa755cf977ad73afeb01ebc3fd6ce405b85039..d7bb9362d30833b9dbde588d237e21223ab0a43a 100644 (file)
@@ -117,6 +117,12 @@ int _System soclose(int);
 #  endif
 #endif
 
+#else
+   /* undefine for OSX - its really an int */
+#  ifdef __DARWIN__
+#    undef SOCKLEN_T
+#    define SOCKLEN_T int
+#  endif
 #endif /* SOCKLEN_T */
 
 /*
@@ -248,6 +254,7 @@ GSocket::GSocket()
   m_stream              = true;
   m_gui_dependent       = NULL;
   m_non_blocking        = false;
+  m_reusable            = false;
   m_timeout             = 10*60*1000;
                                 /* 10 minutes * 60 sec * 1000 millisec */
   m_establishing        = false;
@@ -471,11 +478,7 @@ GSocketError GSocket::SetServer()
     m_error = GSOCK_IOERR;
     return GSOCK_IOERR;
   }
-#if defined(__EMX__) || defined(__VISAGECPP__)
-  ioctl(m_fd, FIONBIO, (char*)&arg, sizeof(arg));
-#else
   ioctl(m_fd, FIONBIO, &arg);
-#endif
   gs_gui_functions->Enable_Events(this);
 
   /* allow a socket to re-bind if the socket is in the TIME_WAIT
@@ -917,7 +920,7 @@ GSocketEventFlags GSocket::Select(GSocketEventFlags flags)
 
     /* Do not use a static struct, Linux can garble it */
     tv.tv_sec = m_timeout / 1000;
-    tv.tv_usec = (m_timeout % 1000) / 1000;
+    tv.tv_usec = (m_timeout % 1000) * 1000;
 
     FD_ZERO(&readfds);
     FD_ZERO(&writefds);
@@ -1702,7 +1705,11 @@ GSocketError GAddress_INET_SetPortName(GAddress *address, const char *port,
     return GSOCK_INVPORT;
   }
 
+#if defined(__WXPM__) && defined(__EMX__)
+  se = getservbyname(port, (char*)protocol);
+#else
   se = getservbyname(port, protocol);
+#endif
   if (!se)
   {
     /* the cast to int suppresses compiler warnings about subscript having the