[#4346] Segmentation fault — Andrew Walrond <andrew@...>
FYI, just got this random unexpected crash
On 01 Feb 2005, at 07:33, Andrew Walrond wrote:
[#4360] Adding lastlog info to etc — "Berger, Daniel" <Daniel.Berger@...>
Hi all,
[#4368] 'when (cond):' causes SyntaxError — "NAKAMURA, Hiroshi" <nakahiro@...>
Hi,
[#4385] add color_set support to curses.c — Paul Duncan <pabs@...>
I'm not sure why this is missing from the Curses binding, but the
[#4392] HTTP Basic authentication for open_uri — Kent Sibilev <ksibilev@...>
Can somebody apply the following patch for open_uri in order to enable
[#4402] BUG: Struct.new(:a?).instance_methods — "Cs. Henk" <csaba-ml@...>
Hi, getting an ArgumentError with "NULL pointer given" doesn't seem to
[#4403] Re: Unknown OS X 10.2 Socket constants (+script to generate) — Sam Roberts <sroberts@...>
Quoteing matz@ruby-lang.org, on Tue, Feb 08, 2005 at 01:21:18PM +0900:
[#4427] Re: windows socket connection freeze — ville.mattila@...
[#4432] curses + threads = non-blocking getch — William Morgan <wmorgan-ruby-core@...>
Hello experts,
In article <20050214231544.GE26414@masanjin.net>,
[#4439] Thread-safe Ruby Status? — Vincent Isambart <vincent.isambart@...>
Hello,
[#4448] add persistent history to irb — "David A. Black" <dblack@...>
Hi --
[#4453] bug in IRB with $_ matching a range of regexps — Ryan Davis <ryand-ruby@...>
> % ruby -v
[#4468] Re: Strange argc check in stable snapshot — "Berger, Daniel" <Daniel.Berger@...>
> -----Original Message-----
[#4475] Re: Strange argc check in stable snapshot — "Berger, Daniel" <Daniel.Berger@...>
> -----Original Message-----
[#4479] Requesting addition to IRB (configurable standard output) — Sascha Ebach <se@...>
Hello,
Quoting se@digitale-wertschoepfung.de, on Fri, Feb 25, 2005 at 01:22:34AM +0900:
On 24 Feb 2005, at 19:51, Sam Roberts wrote:
Quoting drbrain@segment7.net, on Sat, Feb 26, 2005 at 02:43:31AM +0900:
On 25 Feb 2005, at 16:03, Sam Roberts wrote:
Quoting drbrain@segment7.net, on Sat, Feb 26, 2005 at 10:24:52AM +0900:
On 25 Feb 2005, at 18:55, Sam Roberts wrote:
Quoting drbrain@segment7.net, on Sat, Feb 26, 2005 at 03:49:49PM +0900:
[PATCH] callable argument for PTY.getpty (aka PTY.spawn)
Hi!
The patch attached enables you to pass a callable object to PTY.spawn,
so that if you do so, of course, the object will be called (instead of
exec'ing an external program).
Rationale: sometimes you want to do some initialization on the pty
before starting the external program, or maybe you don't even want to
call an external program...
Example: this whole thing popped up when I was writing a small readline
wrapper. The pty spawned for the util to be wrapped is to be put into
non-echo mode prior to starting the util. With the current pty the only
way to do this is as follows:
inp,out,cpid =
PTY.spawn(*(["ruby", "-e", 'system "stty -echo"; exec *$*'] + $*))
With this patch I can do just
inp,out,cpid = PTY.spawn(proc { system "stty -echo"; exec *$*})
Csaba
Attachments (1)
diff -Naur ruby-orig/ext/pty/pty.c ruby/ext/pty/pty.c
--- ruby-orig/ext/pty/pty.c 2004-12-08 06:26:27.000000000 -0700
+++ ruby/ext/pty/pty.c 2005-02-28 04:43:11.000000000 -0700
@@ -283,9 +283,14 @@
seteuid(getuid());
#endif
- arg.argc = argc;
- arg.argv = argv;
- rb_protect(pty_exec, (VALUE)&arg, &status);
+ if (rb_respond_to(*argv,rb_intern("call"))) {
+ v = *argv++;
+ rb_funcall2(v,rb_intern("call"),--argc,argv);
+ } else {
+ arg.argc = argc;
+ arg.argv = argv;
+ rb_protect(pty_exec, (VALUE)&arg, &status);
+ }
sleep(1);
_exit(1);
}