Actions
Bug #12234
closedKernel#exec with a command array broken on Windows as of Ruby 2.2.4
Status:
Rejected
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32]
Description
On Ruby 2.0.0 this worked as expected:
C:\Users\Administrator\GitHub\spec>ruby -ve "exec(['cmd.exe', '/C'], 'echo', 'argv_zero')"
ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
argv_zero
On Ruby 2.2.4 it is broken - it seems to be getting stuck somehow in the new shell and never returns:
C:\Users\Administrator>c:\Ruby\ruby-2.2.4-i386-mingw32\bin\ruby.exe -ve "exec(['cmd.exe', '/C'], 'echo', 'argv_zero')"
ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32]
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Administrator>
Updated by nobu (Nobuyoshi Nakada) over 8 years ago
- Description updated (diff)
- Backport changed from 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN to 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED
Updated by nobu (Nobuyoshi Nakada) over 8 years ago
- Status changed from Open to Rejected
- Backport changed from 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED to 2.1: DONTNEED, 2.2: DONTNEED, 2.3: DONTNEED
It's wrong code.
The second argument must be '/C'.
exec(['cmd.exe', '/C'], '/C', 'echo', 'argv_zero')
Actions
Like0
Like0Like0