aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * internal.h (rb_exec_arg_init): change return type to void.akr2012-06-054-16/+34
| | | | | | | | | | | | | | | | | | * process.c (rb_exec_arg_init): don't return a value. (rb_exec_arg_prepare): ditto. (rb_spawn_process): don't take the prog argument. extract the information from earg. (rb_spawn_internal): follow rb_spawn_process change. (rb_f_spawn): ditto. * io.c (pipe_open): don't take the prog argument. extract the information from eargp. (pipe_open_v): follow pipe_open change. (pipe_open_s): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * internal.h (rb_exec_arg): use union to represent command invocationakr2012-06-054-30/+44
| | | | | | | | | | | | with/without shell. * process.c: follow the rb_exec_arg change. * io.c (pipe_open): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* update async-signal-safe comments.akr2012-06-051-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * internal.h: rb_exec_arg and related stuff moved from intern.hakr2012-06-053-20/+27
| | | | | | | | * include/ruby/intern.h (rb_proc_exec_n): removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* installation dependenciesnobu2012-06-051-3/+3
| | | | | | | * common.mk (do-install-{all,nodoc,arch}): fix installation dependencies so build exts also. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_exec_arg_fixup): allocate a temporary buffer forakr2012-06-053-19/+43
| | | | | | | | | | | | run_exec_dup2 here because it should be async-signal-safe. (run_exec_dup2): use the temporary buffer. (run_exec_dup2_tmpbuf_size): new function. * include/ruby/intern.h (rb_exec_arg): add dup2_tmpbuf field. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* obj_init_copynobu2012-06-0511-27/+58
| | | | | | * object.c (rb_obj_init_copy): should check if trusted too. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (strtok): declaration removed because it is not used.akr2012-06-052-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (proc_spawn): don't detect simple command line hereakr2012-06-052-22/+10
| | | | | | | because rb_exec_fillarg already did. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_exec_fillarg): bail out a loop eagerly.akr2012-06-052-2/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c: add comments about async-signal-safe.akr2012-06-053-51/+73
| | | | | | | | * io.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.nobu2012-06-052-68/+68
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-06-05svn2012-06-051-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c: Edited documentation for IO and File open and new anddrbrain2012-06-052-180/+193
| | | | | | | Kernel#open for consistency and clarity. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* no windows dialognobu2012-06-042-0/+8
| | | | | | | | * win32/win32.c (rb_w32_sysinit): let the system not display the critical-error-handler message box and the Windows Error Reporting dialog. [ruby-core:45389] [Bug #6535] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* don't exec in the test process.akr2012-06-041-3/+16
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add comment.akr2012-06-041-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_exec_fillarg): allocate one more element beforeakr2012-06-043-7/+17
| | | | | | | | | | beginning in argv_str for try_with_sh. * internal.h (ARGVSTR2ARGC): adjust for the above change. (ARGVSTR2ARGV): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * internal.h (ARGVSTR2ARGC): defined.akr2012-06-044-6/+23
| | | | | | | | | | | | (ARGVSTR2ARGV): defined. * process.c (proc_exec_v): use ARGVSTR2ARGV. (rb_spawn_process): use ARGVSTR2ARGC and ARGVSTR2ARGV. * io.c (pipe_open): use ARGVSTR2ARGV. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_insnhelper.h: remove magical code "lfp[0] & 0x02".ko12012-06-045-8/+16
| | | | | | | | | | | Current VM doesn't use this bit. * vm_core.h (RUBY_VM_GET_BLOCK_PTR): added. * eval.c (rb_block_given_p): use RUBY_VM_GET_BLOCK_PTR(). * vm_eval.c (rb_f_block_given_p): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32: VT100 escapenobu2012-06-045-9/+379
| | | | | | | | * win32/win32.c (constat_apply): apply VT100 functions. [ruby-core:44958] [Feature #6418] * win32/win32.c (constat_parse): parse some VT100 escape sequence. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* merge definitionsnobu2012-06-041-14/+8
| | | | | | * process.c (proc_exec_v, rb_proc_exec_e): merge definitions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* unused parameternobu2012-06-041-3/+2
| | | | | | * process.c (proc_spawn_n): remove unused parameter. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* unused variablesnobu2012-06-042-2/+2
| | | | | | | | * io.c (pipe_open): argc and argv are not used on win32. * process.c (rb_spawn_process): remove already useless variables. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_exec_err): should preserve errno.usa2012-06-042-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Suppress warnings.naruse2012-06-041-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/dl/test_c_{struct,union}_entity.rb: broken require.usa2012-06-043-2/+10
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_backtrace.rb: fix test.ko12012-06-042-14/+8
| | | | | | | | Windows path includes `:' character. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h (rb_location_t): fix type and field name.ko12012-06-0411-139/+164
| | | | | | | | | | | | | | | | | | | | | | (1) rename rb_location_t to rb_iseq_location_t. (2) rename field names of rb_iseq_location_t to adjust RubyVM::Backtrace::Location methods. (2-1) filename -> path (2-2) filepath -> absolute_path (2-3) basename -> base_label (2-4) name -> label (3) rename filed name rb_iseq_location_t#line_no to rb_iseq_location_t#first_lineno to clear purpose of this field. (4) The field names rb_binding_t#(filename|line_no) are also renamed to rb_binding_t#(path|first_lineno). * compile.c: apply above changes. * iseq.c: ditto. * proc.c: ditto. * vm*.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compatible loadernobu2012-06-047-11/+138
| | | | | | | | * marshal.c (r_object0): also load TYPE_USRMARSHAL, TYPE_DATA using compatible loader. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_run_exec_options_err): restore save_env() call forusa2012-06-042-1/+66
| | | | | | | | | | non-fork environments. * process.c (rb_exec_err): restore environments after the failure of exec to fix [ruby-core:44093] [Bug #6249] on non-fork environments git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (pipe_open): follow up changes in r35889.usa2012-06-043-44/+15
| | | | | | | | | * process.c (proc_spawn_n): now uses char ** instead of VALUE *. * process.c (rb_spawn_process): prog is now VALUE of String, not char *. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* adjust indentnobu2012-06-031-18/+18
| | | | | | | * marshal.c (r_object0): adjust indent. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove old warningnobu2012-06-032-12/+6
| | | | | | | * marshal.c (r_object0): remove old warning for _alloc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * marshal.c: experimental test aborted.tadf2012-06-035-109/+7
| | | | | | | | | * complex.c: ditto. * rational.c: ditto. * include/ruby/intern.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_spawn_process): fix for Windows. not tested.akr2012-06-032-4/+15
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-06-04svn2012-06-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_proc_exec_e): don't use ISSPACE(). \f, \r and \vakr2012-06-032-1/+6
| | | | | | | are not word separator in Bourne shell. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h (rb_exec_arg): remove argc and argv fields.akr2012-06-033-96/+119
| | | | | | | | | | | | | | | | | | | add use_shell, argv_str and argv_buf fields. * process.c (rb_proc_exec_e): don't split shell command line arguments here to avoid memory allocation in a child process. (rb_exec_fillarg): split shell command line arguments here. (proc_exec_v): takes argv_str argument instead of argv. (rb_proc_exec_ne): removed. (rb_proc_exec_n): removed. (rb_run_exec_options_err): don't initialize the removed fields. (rb_exec_err): don't initialize the removed fields. call proc_exec_v directly instead of rb_proc_exec_ne. (rb_spawn_process): use use_shell field. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * GPL: update text of GPLv2. [ruby-core:44488] [Bug #6328]naruse2012-06-032-20/+24
| | | | | | http://www.gnu.org/licenses/gpl-2.0.txt git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_exec_getargs): remove rb_exec_arg argument.akr2012-06-032-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * marshal.c: calls directly rb_{Complex,Rational}_marshal_load().tadf2012-06-035-0/+68
| | | | | | | | | | But now disabled. [experimental] * complex.c: followed the above. * rational.c: ditto. * include/rub/intern.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_check_argv): use rb_str_new_frozen instead ofakr2012-06-032-2/+7
| | | | | | | | rb_str_new4. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (rb_proc_exec_e): extended version of rb_proc_exec() toakr2012-06-033-7/+35
| | | | | | | | | call execle(). (rb_proc_exec): use rb_proc_exec_e(). (rb_exec_err): use rb_proc_exec_e(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (vm_living_thread_num): suppress a warning.naruse2012-06-032-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * use execve() to preserve environment variables when exec method isakr2012-06-034-51/+117
| | | | | | | | | | | | | | | | | | | | | | | failed. [ruby-core:44093] [ruby-trunk - Bug #6249] * include/ruby/intern.h (rb_exec_arg): add envp_str and envp_buf field to store envp of execve(). * process.c (proc_exec_v): takes envp_str as an argument and use it for execve(). (rb_proc_exec_ne): extended version of rb_proc_exec_n(). (rb_proc_exec_n): use rb_proc_exec_ne(). (rb_proc_exec): follow proc_exec_v() change. (fill_envp_buf_i): new function. (rb_exec_arg_fixup): set up envp_str and envp_buf. (save_env_i): removed. (save_env): removed. (rb_run_exec_options_err): don't modify environment variables. (rb_exec_err): use rb_proc_exec_ne(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* use rb_marshal_{dump,load}nobu2012-06-034-18/+17
| | | | | | | | * marshal.c: revert r35879 "now marshal_{load|dump} are external." * complex.c (nucomp_marshal__{dump,load}): should use rb_marshal_{dump,load}. * rational.c (nurat_marshal__{dump,load}): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* modified tests.tadf2012-06-032-8/+20
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* now marshal_{load|dump} are external.tadf2012-06-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_core.c: checks whether the object is frozen or not.tadf2012-06-032-0/+13
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e