#define UNMASK_SIGNAL() }
#else
+ extern "C" { typedef void (*wxSigHandler)(int); }
#define MASK_SIGNAL() \
{ \
- void (*old_handler)(int); \
- \
- old_handler = signal(SIGPIPE, SIG_IGN);
+ wxSigHandler old_handler = signal(SIGPIPE, SIG_IGN);
#define UNMASK_SIGNAL() \
signal(SIGPIPE, old_handler); \
assert(this);
+ if (m_fd == -1)
+ return (GSOCK_LOST_FLAG & flags);
+
/* Do not use a static struct, Linux can garble it */
tv.tv_sec = m_timeout / 1000;
tv.tv_usec = (m_timeout % 1000) * 1000;