summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-08 09:39:56 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-08 09:39:56 +0000
commit8afb1109920c9f752f47ef265fafdb194a9a1f33 (patch)
treea72764117512a04d779feda8c0e249bfc627ca16
parent6a80859a161de8606d2eca289807c05d8f57dee1 (diff)
merge revision(s) 28193:
* include/ruby/win32.h: include errno.h before defining errnos. * include/ruby/win32.h: check definition existance before defining errno macros. * win32/win32.c (errmap): define winsock errors mappings. these are VC++10 support, merge from trunk (r27236, r27258). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@28227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog10
-rw-r--r--version.h2
-rw-r--r--win32/win32.c49
-rw-r--r--win32/win32.h142
4 files changed, 165 insertions, 38 deletions
diff --git a/ChangeLog b/ChangeLog
index 7880c52405..ea6e70d43e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+Tue Jun 8 18:38:36 2010 NAKAMURA Usaku <usa@ruby-lang.org>
+
+ * include/ruby/win32.h: include errno.h before defining errnos.
+
+ * include/ruby/win32.h: check definition existance before defining
+ errno macros.
+
+ * win32/win32.c (errmap): define winsock errors mappings.
+ these are VC++10 support, merge from trunk (r27236, r27258).
+
Tue Jun 8 18:31:02 2010 NARUSE, Yui <naruse@ruby-lang.org>
* regexp.c (re_compile_pattern): allow zero times match for
diff --git a/version.h b/version.h
index 28b97ab20e..e80b6a8854 100644
--- a/version.h
+++ b/version.h
@@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2010-06-08"
#define RUBY_VERSION_CODE 187
#define RUBY_RELEASE_CODE 20100608
-#define RUBY_PATCHLEVEL 289
+#define RUBY_PATCHLEVEL 290
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8
diff --git a/win32/win32.c b/win32/win32.c
index c4b6a124ab..8497e487b2 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -178,15 +178,60 @@ static struct {
{ ERROR_INFLOOP_IN_RELOC_CHAIN, ENOEXEC },
{ ERROR_FILENAME_EXCED_RANGE, ENOENT },
{ ERROR_NESTING_NOT_ALLOWED, EAGAIN },
+#ifndef ERROR_PIPE_LOCAL
+#define ERROR_PIPE_LOCAL 229L
+#endif
+ { ERROR_PIPE_LOCAL, EPIPE },
+ { ERROR_BAD_PIPE, EPIPE },
+ { ERROR_PIPE_BUSY, EAGAIN },
+ { ERROR_NO_DATA, EPIPE },
+ { ERROR_PIPE_NOT_CONNECTED, EPIPE },
+ { ERROR_OPERATION_ABORTED, EINTR },
{ ERROR_NOT_ENOUGH_QUOTA, ENOMEM },
- { WSAENAMETOOLONG, ENAMETOOLONG },
- { WSAENOTEMPTY, ENOTEMPTY },
+ { ERROR_MOD_NOT_FOUND, ENOENT },
{ WSAEINTR, EINTR },
{ WSAEBADF, EBADF },
{ WSAEACCES, EACCES },
{ WSAEFAULT, EFAULT },
{ WSAEINVAL, EINVAL },
{ WSAEMFILE, EMFILE },
+ { WSAEWOULDBLOCK, EWOULDBLOCK },
+ { WSAEINPROGRESS, EINPROGRESS },
+ { WSAEALREADY, EALREADY },
+ { WSAENOTSOCK, ENOTSOCK },
+ { WSAEDESTADDRREQ, EDESTADDRREQ },
+ { WSAEMSGSIZE, EMSGSIZE },
+ { WSAEPROTOTYPE, EPROTOTYPE },
+ { WSAENOPROTOOPT, ENOPROTOOPT },
+ { WSAEPROTONOSUPPORT, EPROTONOSUPPORT },
+ { WSAESOCKTNOSUPPORT, ESOCKTNOSUPPORT },
+ { WSAEOPNOTSUPP, EOPNOTSUPP },
+ { WSAEPFNOSUPPORT, EPFNOSUPPORT },
+ { WSAEAFNOSUPPORT, EAFNOSUPPORT },
+ { WSAEADDRINUSE, EADDRINUSE },
+ { WSAEADDRNOTAVAIL, EADDRNOTAVAIL },
+ { WSAENETDOWN, ENETDOWN },
+ { WSAENETUNREACH, ENETUNREACH },
+ { WSAENETRESET, ENETRESET },
+ { WSAECONNABORTED, ECONNABORTED },
+ { WSAECONNRESET, ECONNRESET },
+ { WSAENOBUFS, ENOBUFS },
+ { WSAEISCONN, EISCONN },
+ { WSAENOTCONN, ENOTCONN },
+ { WSAESHUTDOWN, ESHUTDOWN },
+ { WSAETOOMANYREFS, ETOOMANYREFS },
+ { WSAETIMEDOUT, ETIMEDOUT },
+ { WSAECONNREFUSED, ECONNREFUSED },
+ { WSAELOOP, ELOOP },
+ { WSAENAMETOOLONG, ENAMETOOLONG },
+ { WSAEHOSTDOWN, EHOSTDOWN },
+ { WSAEHOSTUNREACH, EHOSTUNREACH },
+ { WSAEPROCLIM, EPROCLIM },
+ { WSAENOTEMPTY, ENOTEMPTY },
+ { WSAEUSERS, EUSERS },
+ { WSAEDQUOT, EDQUOT },
+ { WSAESTALE, ESTALE },
+ { WSAEREMOTE, EREMOTE },
};
int
diff --git a/win32/win32.h b/win32/win32.h
index b6ebab04ae..4e46af0cf8 100644
--- a/win32/win32.h
+++ b/win32/win32.h
@@ -331,43 +331,115 @@ extern char *rb_w32_strerror(int);
/* #undef va_end */
/* winsock error map */
-#define EWOULDBLOCK WSAEWOULDBLOCK
-#define EINPROGRESS WSAEINPROGRESS
-#define EALREADY WSAEALREADY
-#define ENOTSOCK WSAENOTSOCK
-#define EDESTADDRREQ WSAEDESTADDRREQ
-#define EMSGSIZE WSAEMSGSIZE
-#define EPROTOTYPE WSAEPROTOTYPE
-#define ENOPROTOOPT WSAENOPROTOOPT
-#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
-#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
-#define EOPNOTSUPP WSAEOPNOTSUPP
-#define EPFNOSUPPORT WSAEPFNOSUPPORT
-#define EAFNOSUPPORT WSAEAFNOSUPPORT
-#define EADDRINUSE WSAEADDRINUSE
-#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
-#define ENETDOWN WSAENETDOWN
-#define ENETUNREACH WSAENETUNREACH
-#define ENETRESET WSAENETRESET
-#define ECONNABORTED WSAECONNABORTED
-#define ECONNRESET WSAECONNRESET
-#define ENOBUFS WSAENOBUFS
-#define EISCONN WSAEISCONN
-#define ENOTCONN WSAENOTCONN
-#define ESHUTDOWN WSAESHUTDOWN
-#define ETOOMANYREFS WSAETOOMANYREFS
-#define ETIMEDOUT WSAETIMEDOUT
-#define ECONNREFUSED WSAECONNREFUSED
-#define ELOOP WSAELOOP
+#include <errno.h>
+
+#ifndef EWOULDBLOCK
+# define EWOULDBLOCK WSAEWOULDBLOCK
+#endif
+#ifndef EINPROGRESS
+# define EINPROGRESS WSAEINPROGRESS
+#endif
+#ifndef EALREADY
+# define EALREADY WSAEALREADY
+#endif
+#ifndef ENOTSOCK
+# define ENOTSOCK WSAENOTSOCK
+#endif
+#ifndef EDESTADDRREQ
+# define EDESTADDRREQ WSAEDESTADDRREQ
+#endif
+#ifndef EMSGSIZE
+# define EMSGSIZE WSAEMSGSIZE
+#endif
+#ifndef EPROTOTYPE
+# define EPROTOTYPE WSAEPROTOTYPE
+#endif
+#ifndef ENOPROTOOPT
+# define ENOPROTOOPT WSAENOPROTOOPT
+#endif
+#ifndef EPROTONOSUPPORT
+# define EPROTONOSUPPORT WSAEPROTONOSUPPORT
+#endif
+#ifndef ESOCKTNOSUPPORT
+# define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
+#endif
+#ifndef EOPNOTSUPP
+# define EOPNOTSUPP WSAEOPNOTSUPP
+#endif
+#ifndef EPFNOSUPPORT
+# define EPFNOSUPPORT WSAEPFNOSUPPORT
+#endif
+#ifndef EAFNOSUPPORT
+# define EAFNOSUPPORT WSAEAFNOSUPPORT
+#endif
+#ifndef EADDRINUSE
+# define EADDRINUSE WSAEADDRINUSE
+#endif
+#ifndef EADDRNOTAVAIL
+# define EADDRNOTAVAIL WSAEADDRNOTAVAIL
+#endif
+#ifndef ENETDOWN
+# define ENETDOWN WSAENETDOWN
+#endif
+#ifndef ENETUNREACH
+# define ENETUNREACH WSAENETUNREACH
+#endif
+#ifndef ENETRESET
+# define ENETRESET WSAENETRESET
+#endif
+#ifndef ECONNABORTED
+# define ECONNABORTED WSAECONNABORTED
+#endif
+#ifndef ECONNRESET
+# define ECONNRESET WSAECONNRESET
+#endif
+#ifndef ENOBUFS
+# define ENOBUFS WSAENOBUFS
+#endif
+#ifndef EISCONN
+# define EISCONN WSAEISCONN
+#endif
+#ifndef ENOTCONN
+# define ENOTCONN WSAENOTCONN
+#endif
+#ifndef ESHUTDOWN
+# define ESHUTDOWN WSAESHUTDOWN
+#endif
+#ifndef ETOOMANYREFS
+# define ETOOMANYREFS WSAETOOMANYREFS
+#endif
+#ifndef ETIMEDOUT
+# define ETIMEDOUT WSAETIMEDOUT
+#endif
+#ifndef ECONNREFUSED
+# define ECONNREFUSED WSAECONNREFUSED
+#endif
+#ifndef ELOOP
+# define ELOOP WSAELOOP
+#endif
/*#define ENAMETOOLONG WSAENAMETOOLONG*/
-#define EHOSTDOWN WSAEHOSTDOWN
-#define EHOSTUNREACH WSAEHOSTUNREACH
+#ifndef EHOSTDOWN
+# define EHOSTDOWN WSAEHOSTDOWN
+#endif
+#ifndef EHOSTUNREACH
+# define EHOSTUNREACH WSAEHOSTUNREACH
+#endif
/*#define ENOTEMPTY WSAENOTEMPTY*/
-#define EPROCLIM WSAEPROCLIM
-#define EUSERS WSAEUSERS
-#define EDQUOT WSAEDQUOT
-#define ESTALE WSAESTALE
-#define EREMOTE WSAEREMOTE
+#ifndef EPROCLIM
+# define EPROCLIM WSAEPROCLIM
+#endif
+#ifndef EUSERS
+# define EUSERS WSAEUSERS
+#endif
+#ifndef EDQUOT
+# define EDQUOT WSAEDQUOT
+#endif
+#ifndef ESTALE
+# define ESTALE WSAESTALE
+#endif
+#ifndef EREMOTE
+# define EREMOTE WSAEREMOTE
+#endif
#define F_SETFL 1
#define O_NONBLOCK 1