diff --git a/ChangeLog b/ChangeLog index 891cc339bc..3d3f3bc604 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon May 2 00:36:12 2011 KOSAKI Motohiro + + * ext/socket/init.c (rsock_connect): add to care EINTR. based + on a patch from Eric Wong at [ruby-core:35621][Bug #4555] + Sat Apr 30 03:25:53 2011 KOSAKI Motohiro * test/io/wait/test_io_wait.rb: New. for testing ext/io/wait. diff --git a/ext/socket/init.c b/ext/socket/init.c index ffd1c72895..48718313f0 100644 --- a/ext/socket/init.c +++ b/ext/socket/init.c @@ -383,6 +383,12 @@ rsock_connect(int fd, const struct sockaddr *sockaddr, int len, int socks) status = (int)BLOCKING_REGION(func, &arg); if (status < 0) { switch (errno) { + case EINTR: +#if defined(ERESTART) + case ERESTART: +#endif + continue; + case EAGAIN: #ifdef EINPROGRESS case EINPROGRESS: diff --git a/version.h b/version.h index 5f29ed5e98..beadcca1af 100644 --- a/version.h +++ b/version.h @@ -1,13 +1,13 @@ #define RUBY_VERSION "1.9.2" -#define RUBY_PATCHLEVEL 246 +#define RUBY_PATCHLEVEL 247 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 9 #define RUBY_VERSION_TEENY 1 #define RUBY_RELEASE_YEAR 2011 #define RUBY_RELEASE_MONTH 5 -#define RUBY_RELEASE_DAY 30 -#define RUBY_RELEASE_DATE "2011-05-30" +#define RUBY_RELEASE_DAY 31 +#define RUBY_RELEASE_DATE "2011-05-31" #include "ruby/version.h"