From: Dave Thomas Date: 2007-11-20T07:05:35+09:00 Subject: Re: Change in system() behaviour On Nov 19, 2007, at 3:59 PM, Wolfgang N�dasi-Donner wrote: > Dave Thomas schrieb: >> Shame... It makes a simple interface a lot uglier... > > You wrote about long ago: PickAxe/Kernel#system/Last sentence: > > Raises SystemCallError if the command couldn't execute > (typically Errno::ENOENT). > > I never recognized this sentence, because it never happend. Is > it possible, that this was an earlier behavior of Ruby that was > changed and is now re-implemented? > > On Windows "system" returns "true" only if a normal exit occurs > ("exit(0)"). If the command exits with another exit value "system" > returns "false". Wow That's strange. I have other code in the book that relies on false coming back (I know, because that code is now failig with ENOENT exceptions) > > Why not use a return value "nil" ("command not in list of command") > if the command cannot be executed, instead of raising an Exception? I'd definitely second that. Matz?