[#4834] Fwd: Re: Whats so different about a Hash? — Andrew Walrond <andrew@...>
>>>>> "A" == Andrew Walrond <andrew@walrond.org> writes:
On Thursday 05 May 2005 13:48, ts wrote:
>>>>> "A" == Andrew Walrond <andrew@walrond.org> writes:
On Thursday 05 May 2005 13:57, ts wrote:
[#4844] Getting rid of Object#equal?()? — =?ISO-8859-15?Q?Florian_Gro=DF?= <florgro@...>
Moin.
[#4848] No way to change socket timeout on opened URI — noreply@...
Bugs item #1878, was opened at 2005-05-05 17:55
[#4855] Method hooks in singleton classes — Pit Capitain <pit@...>
Hello Ruby-maintainers,
[#4858] Build fails on OSX Tiger 10.4 — noreply@...
Bugs item #1883, was opened at 2005-05-06 14:55
Hi,
Hi,
Hi,
On 5/19/05, Shugo Maeda <shugo@ruby-lang.org> wrote:
Hi,
Hi,
[#4869] Infinite loop on YAML.dump (Re: ruby-list:40801) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Hello.
[#4874] - Need to reduce Ruby Sources to the Minimal — Ilias Lazaridis <ilias@...>
Hello all,
Ilias Lazaridis schrieb:
Pit Capitain wrote:
Ryan Davis wrote:
ES wrote:
On May 12, 2005, at 3:13 PM, Ilias Lazaridis wrote:
Mathieu Bouchard wrote:
On Thursday 12 May 2005 22:09, Ilias Lazaridis wrote:
Francois GORET wrote:
Hi,
nobu.nokada@softhome.net wrote:
Hi,
nobu.nokada@softhome.net wrote:
[#4881] Encoding Pragma — Bertram Scharpf <lists@...>
Hi,
[#4886] ruby 1.8.3 preview1 — Yukihiro Matsumoto <matz@...>
Hi,
Yukihiro Matsumoto <matz@ruby-lang.org> [2005-05-12 17:49]:
>What about [ruby-core:4296]?
[#4911] Pointless argc check in Array#select — noreply@...
Patches item #1900, was opened at 2005-05-12 09:33
noreply@rubyforge.org wrote:
>>>>> "D" == Daniel Berger <djberge@qwest.com> writes:
ts wrote:
>>>>> "D" == Daniel Berger <djberge@qwest.com> writes:
On 5/12/05, ts <decoux@moulon.inra.fr> wrote:
Austin Ziegler wrote:
[#4919] - Hierarchical/Modular Directory Structure — Ilias Lazaridis <ilias@...>
The source-code structure should be simplified, lowering barriers for
Hi,
Nakada, Nobuyoshi wrote:
Ilias Lazaridis wrote:
On 5/14/05, Ilias Lazaridis <ilias@lazaridis.com> wrote:
Austin Ziegler wrote:
Hi,
nobu.nokada@softhome.net wrote:
[#4932] ruby-1.8.3 preview1 - failure: cygwin. — Hugh Sasse <hgs@...>
I've just tried to build the preview and got:
[#4992] Pathname#unlink fails on a symlink which points to a directory. — noreply@...
Bugs item #1917, was opened at 2005-05-14 21:33
In article <200505142133.j4ELXEaM011256@rubyforge.org>,
Hello.
In article <20050515153530.0D9F30E0.ocean@m2.ccsnet.ne.jp>,
[#5006] Suggestion for avoiding incivilities — Gavin Sinclair <gsinclair@...>
Hi all,
[#5010] - Function Argument Conventions — Ilias Lazaridis <ilias@...>
As a general rule, the first argument to a function should be the
[#5020] Problems with the "outer scope" operator — Lothar Scholz <mailinglists@...>
Hello,
[#5039] CGI::escapeHTML escapes the ampersand in an existing escape command — noreply@...
Bugs item #1930, was opened at 2005-05-19 11:45
Hi,
Thu, 19 May 2005 13:09:45 +0900, nobuyoshi nakada
Hi,
[#5040] Suggestion to add alias for underscore style method names to camel case named class methods in CGI — noreply@...
Bugs item #1931, was opened at 2005-05-19 11:46
On Thu, 19 May 2005 noreply@rubyforge.org wrote:
On Thu, 19 May 2005 21:22:46 +0900, David A. Black <dblack@wobblini.net>
[#5068] Re: [ ruby-Patches-1939 ] Pathname, totally revamped — Daniel Berger <djberg96@...>
--- nobu.nokada@softhome.net wrote:
Hi,
On 5/22/05, nobu.nokada@softhome.net <nobu.nokada@softhome.net>
Hi,
[#5070] Re: [ ruby-Patches-1939 ] Pathname, totally revamped — Daniel Berger <djberg96@...>
--- daz <dooby@d10.karoo.co.uk> wrote:
[#5075] Re: [ ruby-Patches-1939 ] Pathname, totally revamped — "Berger, Daniel" <Daniel.Berger@...>
> -----Original Message-----
Quoting Daniel.Berger@qwest.com, on Mon, May 23, 2005 at 11:06:58PM +0900:
[#5107] Re: will callable objects be more general in Ruby 1.9? — Eric Mahurin <eric_mahurin@...>
Re: select() on non-sockets in eval.c
Hi,
At Wed, 25 May 2005 15:28:08 +0900,
nobuyoshi nakada wrote in [ruby-core:05090]:
> > In eval.c, select is used to synchronize IO in ruby threads, but on some
> > platforms select() does not work on non-sockets. We are told that
> > Windows is just such a platform. However, there are no exceptions in
> > the code to handle the Windows case, which is a bit puzzling.
> > Apparently, by some accident of the Windows select() implementation,
>
> It is replaced within win32/win32.[ch].
Like the following patch, though I haven't even done compilation.
BTW, I feel that SIZEOF_LONG_LONG must be a preprocess time constant
and should be in config.h.
Index: configure.in
===================================================================
RCS file: /cvs/ruby/src/ruby/configure.in,v
retrieving revision 1.277
diff -U2 -p -u -r1.277 configure.in
--- configure.in 15 May 2005 09:56:49 -0000 1.277
+++ configure.in 25 May 2005 09:14:34 -0000
@@ -1393,4 +1393,7 @@ case "$target_os" in
esac
;;
+ vms)
+ AC_LIBOBJ([vms])
+ ;;
*)
;;
Index: vms/vms.c
===================================================================
RCS file: vms/vms.c
diff -N vms/vms.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ vms/vms.c 25 May 2005 09:05:18 -0000
@@ -0,0 +1,87 @@
+#include "ruby.h"
+#include "defines.h"
+
+static int
+is_socket(int fd)
+{
+ int type, len;
+
+ len = sizeof(type);
+ if (getsockopt(fd, SOL_SOCKET, SO_TYPE, (void *)&type, &len) == 0)
+ return 1;
+ if (errno == ENOTSOCK) errno = 0;
+
+ return 0;
+}
+
+#undef select
+int
+rb_vms_select(int maxfd, fd_set *rfd, fd_set *wfd, fd_set *efd, struct timeval *tv)
+{
+ int i, maxsock, socks, nsocks;
+ fd_set rs, ws, es, *rp, *wp, *ep;
+ struct timeval z;
+
+ FD_ZERO(&rs);
+ FD_ZERO(&ws);
+ FD_ZERO(&es);
+
+ /* count socket and non-socket fds */
+ maxsock = socks = nsocks = 0;
+ if (rfd || wfd || efd) {
+ for (i = 0; i < maxfd; ++i) {
+ int r = (rfd != 0) && FD_ISSET(i, rfd);
+ int w = (wfd != 0) && FD_ISSET(i, wfd);
+ int e = (efd != 0) && FD_ISSET(i, efd);
+ if (!r && !w && !e) continue;
+ if (is_socket(i)) {
+ if (r) FD_SET(i, (rp = &rs));
+ if (w) FD_SET(i, (wp = &ws));
+ if (e) FD_SET(i, (ep = &es));
+ maxsock = i + 1;
+ socks++;
+ }
+ else {
+ nsocks++;
+ }
+ }
+ }
+
+ if (!nsocks) {
+ /* sockets only */
+ return select(maxsock, rfd, wfd, efd, tv);
+ }
+
+ if (!socks) {
+ /* assuming non-socket fds are always ready */
+ return nsocks;
+ }
+
+ /* check if sockets are ready */
+ z.tv_sec = 0;
+ z.tv_usec = 0;
+ ret = select(maxsock, rp, wp, ep, &z);
+ if (ret < 0) {
+ if (rfd) *rfd = rs;
+ if (wfd) *wfd = ws;
+ if (efd) *efd = es;
+ return nsocks;
+ }
+
+ for (i = 0; i < maxsock; ++i) {
+ if (rp && FD_ISSET(i, rp)) {
+ FD_SET(i, rfd);
+ ret++;
+ }
+ if (wp && FD_ISSET(i, wp)) {
+ FD_SET(i, wfd);
+ ret++;
+ }
+ if (ep && FD_ISSET(i, ep)) {
+ FD_SET(i, efd);
+ ret++;
+ }
+ }
+
+ return ret;
+}
Index: vms/vms.h
===================================================================
RCS file: /cvs/ruby/src/ruby/vms/vms.h,v
retrieving revision 1.3
diff -U2 -p -r1.3 vms.h
--- vms/vms.h 26 Dec 2003 01:38:31 -0000 1.3
+++ vms/vms.h 25 May 2005 09:05:58 -0000
@@ -10,4 +10,7 @@ extern int vsnprintf();
extern int snprintf();
+int rb_vms_select(int, fd_set*, fd_set*, fd_set*, struct timeval*);
+#define select(n, r, w, e, t) rb_vms_select(n, r, w, e, t)
+
#define LONG_LONG long long
#define SIZEOF_LONG_LONG sizeof(long long)
--
Nobu Nakada