General

Profile

martin.dorey@hds.com (Martin Dorey)

Issues

open closed Total
Assigned issues 0 0 0
Reported issues 0 4 4

Activity

01/03/2025

02:16 AM Ruby Bug #20995: exception escapes block given to IO.popen("-") in child process
Sorry, I meant to add that, if I revert io.c to how it is in git, my one-liner says:
```
martind@stormy:~/download/ruby$ ./ruby --disable-gems -we 'IO.popen("-") { |io| raise("a fuss") unless io; }; puts($?.inspect())'
#<Process::Stat...
martin.dorey@hds.com (Martin Dorey)
02:13 AM Ruby Bug #20995: exception escapes block given to IO.popen("-") in child process
Domo arigato, Nobu-san, for agreeing that the previous behavior wasn't right and for such a quick fix. I really like the idea of expressing how the code should behave with a unit test. I was surprised by a couple of aspects of your tes... martin.dorey@hds.com (Martin Dorey)

12/31/2024

11:55 PM Ruby Bug #20995 (Closed): exception escapes block given to IO.popen("-") in child process
I was surprised by the "ensure" being reached in the child process here:
``` ruby
martind@stormy:~/tmp/D161730$ cat repro.rb
#!/usr/bin/ruby -w
parent = Process.pid()
[false, true].each() {
|nauseous|
$stderr.puts("#{naus...
martin.dorey@hds.com (Martin Dorey)

08/30/2024

11:19 PM Ruby Bug #20708 (Closed): EINTR while opening fifo isn't retried
I don't think this should fail:
```
martind@stormy:~/download/ruby$ rm -f /tmp/badger && mkfifo /tmp/badger && timeout 2 ./ruby --disable-gems -we 'fork() {}; IO.read("/tmp/badger")'
-e:1:in 'IO.read': Interrupted system call @ rb_sys...
martin.dorey@hds.com (Martin Dorey)

04/17/2021

09:00 PM Ruby Bug #17812 (Closed): Timeout::Error doesn't let two-argument raise() set a new message
Shouldn't this:
```
martind@pizzagate:~$ ruby -we 'require "timeout"; raise(Timeout::Error.new("hello"), "world")'
Traceback (most recent call last):
-e:1:in `<main>': hello (Timeout::Error)
martind@pizzagate:~$
```
... say "worl...
martin.dorey@hds.com (Martin Dorey)

09/05/2015

11:54 PM Ruby Bug #11510 (Closed): exit waits for the block form of IO.popen's child
The block form of `IO.popen` waits for the child process to finish before quitting. If the parent process exits during this wait, the wait is interrupted and the exit proceeds promptly. There's a difference in behavior, however, if the... martin.dorey@hds.com (Martin Dorey)

Also available in: Atom