summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-02-25 09:18:09 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-02-25 09:18:09 +0000
commitfb31afc5a23b33bd30bc63d2269bc7eebba2fe2c (patch)
tree205a9634ee094d5f5ad191f69da8c6722249f618
parent8f800a24525671fce407cefac9cff56a070f6a3b (diff)
* process.c (rb_syswait): thread kludge; should be fixed to
support native thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--COPYING12
-rw-r--r--ChangeLog13
-rw-r--r--process.c23
-rw-r--r--version.h8
4 files changed, 34 insertions, 22 deletions
diff --git a/COPYING b/COPYING
index 776b142468..870a5f22d6 100644
--- a/COPYING
+++ b/COPYING
@@ -17,22 +17,22 @@ You can redistribute it and/or modify it under either the terms of the GPL
b) use the modified software only within your corporation or
organization.
- c) rename any non-standard executables so the names do not conflict
- with standard executables, which must also be provided.
+ c) give non-standard binaries non-standard names, with
+ instructions on where to get the original software distribution.
d) make other distribution arrangements with the author.
- 3. You may distribute the software in object code or executable
- form, provided that you do at least ONE of the following:
+ 3. You may distribute the software in object code or binary form,
+ provided that you do at least ONE of the following:
- a) distribute the executables and library files of the software,
+ a) distribute the binaries and library files of the software,
together with instructions (in the manual page or equivalent)
on where to get the original distribution.
b) accompany the distribution with the machine-readable source of
the software.
- c) give non-standard executables non-standard names, with
+ c) give non-standard binaries non-standard names, with
instructions on where to get the original software distribution.
d) make other distribution arrangements with the author.
diff --git a/ChangeLog b/ChangeLog
index 7e48f0ff0f..5bc9268ac3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,15 +2,16 @@ Mon Feb 25 13:32:13 2002 Nobuyoshi Nakada <nobu.nakada@nifty.ne.jp>
* lib/shell.rb (Shell::expand_path): relative to @cwd.
-Mon Jan 7 12:38:47 2002 Tanaka Akira <akr@m17n.org>
-
- * lib/time.rb: fix unit tests before Unix Epoch.
-
Sun Feb 24 17:20:50 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/*/*.h: Merge from rough.
- Avoid namespace pollution. (MD5_* -> rb_Digest_MD5_*, etc.)
+Sat Feb 23 21:12:13 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * process.c (rb_syswait): thread kludge; should be fixed to
+ support native thread.
+
Fri Feb 22 22:00:08 2002 Minero Aoki <aamine@loveruby.net>
* lib/net/protocol.rb: set read_timeout dynamically.
@@ -355,6 +356,10 @@ Mon Jan 7 14:38:51 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
Mon Jan 7 12:38:47 2002 Tanaka Akira <akr@m17n.org>
+ * lib/time.rb: fix unit tests before Unix Epoch.
+
+Mon Jan 7 12:38:47 2002 Tanaka Akira <akr@m17n.org>
+
* lib/time.rb (Time#xmlschema): new optional argument
fractional_seconds to specify a number of digits of
fractional part of the time.
diff --git a/process.c b/process.c
index e10c0d7096..da8986207a 100644
--- a/process.c
+++ b/process.c
@@ -588,29 +588,36 @@ void
rb_syswait(pid)
int pid;
{
+ static int overriding;
RETSIGTYPE (*hfunc)_((int)), (*qfunc)_((int)), (*ifunc)_((int));
int status;
- int i;
+ int i, hooked = Qfalse;
+ if (!overriding) {
#ifdef SIGHUP
- hfunc = signal(SIGHUP, SIG_IGN);
+ hfunc = signal(SIGHUP, SIG_IGN);
#endif
#ifdef SIGQUIT
- qfunc = signal(SIGQUIT, SIG_IGN);
+ qfunc = signal(SIGQUIT, SIG_IGN);
#endif
- ifunc = signal(SIGINT, SIG_IGN);
+ ifunc = signal(SIGINT, SIG_IGN);
+ overriding = Qtrue;
+ hooked = Qtrue;
+ }
do {
- i = rb_waitpid(pid, 0, &status);
+ i = rb_waitpid(pid, &status, 0);
} while (i == -1 && errno == EINTR);
+ if (hooked) {
#ifdef SIGHUP
- signal(SIGHUP, hfunc);
+ signal(SIGHUP, hfunc);
#endif
#ifdef SIGQUIT
- signal(SIGQUIT, qfunc);
+ signal(SIGQUIT, qfunc);
#endif
- signal(SIGINT, ifunc);
+ signal(SIGINT, ifunc);
+ }
}
static VALUE
diff --git a/version.h b/version.h
index 3c8e247f46..f847242211 100644
--- a/version.h
+++ b/version.h
@@ -1,4 +1,4 @@
-#define RUBY_VERSION "1.6.6"
-#define RUBY_RELEASE_DATE "2002-02-24"
-#define RUBY_VERSION_CODE 166
-#define RUBY_RELEASE_CODE 20020224
+#define RUBY_VERSION "1.6.7"
+#define RUBY_RELEASE_DATE "2002-02-25"
+#define RUBY_VERSION_CODE 167
+#define RUBY_RELEASE_CODE 20020225