why
41256fd432
* eval.c (rb_thread_save_context, rb_thread_restore_context):
...
sandbox hook to save and restore sandbox state.
* eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
* eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
to circumvent ensure, in order to prevent endless loops.
[ruby-core:08768]
* eval.c (rb_thread_kill): fix Thread#kill docs, which returns
the thread object in all cases.
* node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
with the thread flags. used by the sandbox extension.
* ruby.h: extern rb_eThreadError, so sandbox can swap it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-23 14:39:32 +00:00
nobu
3ba3860f58
* eval.c (rb_require_safe): prevent extension from loading twice.
...
fixed: [ruby-dev:29523]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-10 00:18:39 +00:00
nobu
28fd8a2d91
* eval.c (stack_extend): fixed prototype.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-10 00:09:11 +00:00
akr
53cec657a1
* common.mk, configure.in, defines.h, eval.c, gc.c, main.c,
...
numeric.c, ruby.h, ia64.s: backport IA64 HP-UX support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-01 18:47:11 +00:00
why
882ce706c1
* eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
...
along with ruby_cref, for use by the sandbox. [ruby-core:08762]
* node.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 03:52:48 +00:00
matz
390aa97698
* dln.c, eval.c, gc.c, regex.c, ruby.h: shut up AIX alloca
...
warning. [ruby-dev:29191]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-07 03:43:42 +00:00
nobu
a815a47235
* eval.c (Init_Binding): fix old commit miss.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-01 03:25:14 +00:00
matz
17c3d539f0
* ruby.h: use ifdef (or defined) for macro constants that may or
...
may not be defined to shut up gcc's -Wundef warnings.
[ruby-core:08447]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-31 06:34:10 +00:00
nobu
fe1608a519
* eval.c (rb_call0): trace call/return of method defined from block.
...
fixed: [ruby-core:08329]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-30 14:27:01 +00:00
nobu
ea899f6b18
* eval.c (rb_trap_eval): make the current thread runnable to deal with
...
exceptions which occurred within the trap. fixed: [ruby-dev:27729]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-30 13:30:19 +00:00
nobu
8c217096f4
* eval.c (backtrace): skip frames successive on node and method name.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-24 13:04:39 +00:00
matz
dfc502ad24
* eval.c (rb_call0): revert last change. [ruby-dev:29112]
...
[ruby-core:08374]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-24 06:25:21 +00:00
nobu
4d4f9e8146
* eval.c (rb_call0): include funcalled methods in caller list.
...
fixed: [ruby-core:08290]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-21 12:22:08 +00:00
matz
980326f6f1
* ruby.h: export classes/modules to implement sandbox.
...
[ruby-core:08283]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-20 07:04:17 +00:00
nobu
9b3e810057
* eval.c (rb_require_safe): wait for another thread requiring the same
...
feature. fixed: [ruby-core:08229]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-15 14:50:49 +00:00
matz
b268c7309e
* array.c (rb_ary_pop): may cause realloc oscillation. a patch
...
from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
[ruby-dev:29028]
* parse.y (then): we'd like to reserve colon here for the future.
warning added.
* ruby.h: export rb_cMethod. [ruby-talk:201259]
* ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
digits. [ruby-dev:28872]
* ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
[ruby-list:42533] fixed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-13 15:43:02 +00:00
nagai
5ed246f1d3
* signal.c (ruby_nativethread_signal, posix_nativethread_signal,
...
sigsend_to_ruby_thread, install_nativethread_sighandler):
nativethread-support on signal handler. RE-backport from 1.9.
* ruby.h (HAVE_NATIVETHREAD_KILL): ditto.
* eval.c (ruby_native_thread_kill): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-10 05:02:00 +00:00
nobu
010de8e28c
* eval.c (rb_clear_cache_for_undef): clear entries for included
...
module. fixed: [ruby-core:08180]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-10 00:30:40 +00:00
nobu
46c525ca9b
* eval.c (next_jump): deal with destination of next.
...
fixed: [ruby-core:08169]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-08 15:55:37 +00:00
nobu
ef8e63acb5
* util.c (powersOf10): constified.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-26 15:54:22 +00:00
nagai
e4def7400f
* signal.c: revert last change.
...
* ruby.h: ditto.
* eval.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-23 21:37:10 +00:00
nagai
44e53b1dea
* signal.c (ruby_nativethread_signal, posix_nativethread_signal,
...
sigsend_to_ruby_thread, install_nativethread_sighandler):
nativethread-support on signal handler (backport from 1.9).
* ruby.h (HAVE_NATIVETHREAD_KILL): ditto.
* eval.c (ruby_native_thread_kill): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-21 08:37:35 +00:00
matz
d4e741e89e
* eval.c (rb_call0): binding for the return event hook should have
...
consistent scope. [ruby-core:07928]
* eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
event_hooks. no guarantee for arbitrary hook deletion.
[ruby-dev:28632]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-07 00:19:14 +00:00
matz
db3bdf6eca
* eval.c (umethod_bind): should not update original class.
...
[ruby-dev:28636]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-22 07:01:53 +00:00
matz
af89971287
* eval.c (ev_const_get): should support constant access from
...
within instance_eval(). [ruby-dev:28327]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-22 04:41:36 +00:00
matz
2835df5a05
* parse.y (arg): too much NEW_LIST()
...
* eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-19 04:57:58 +00:00
matz
1d3fd0024d
* eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
...
[ruby-dev:28585]
* parse.y (list_concat): revert last change.
* parse.y (arg): use NODE_ARGSCAT for placeholder.
* lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
mathew <meta at pobox.com>. [ruby-core:07738]
* variable.c (rb_const_set): raise error when no target klass is
supplied. [ruby-dev:28582]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-19 03:02:03 +00:00
matz
e546c7dc2e
* eval.c: block_unique should be 1, not frame_unique.
...
[ruby-dev:28577]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-17 15:13:07 +00:00
matz
861741d8a5
* eval.c (backtrace): reports aliased method names in a generated
...
backtrace. a patch from "U.Nakamura" <usa at garbagecollect.jp>.
[ruby-dev:28471]
* eval.c (rb_call0): insecure calling should be checked for non
NODE_SCOPE method invocations too.
* eval.c (rb_alias): should preserve the current safe level as
well as method definition.
* eval.c (yield_under_i): pass self again for instance_eval().
[ruby-dev:28466]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-28 21:54:10 +00:00
matz
5b7cdcfb32
* eval.c (method_missing): should support argument splat in
...
super. [ruby-talk:185438]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-23 01:52:05 +00:00
matz
6834f57ba0
* lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
...
directories. a patch from Eric Hodel <drbrain at segment7.net>.
[ruby-core:07423]
* eval.c (rb_thread_fd_writable): should not re-schedule output
from KILLED thread (must be error printing).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-03 17:39:28 +00:00
ocean
c60fb7c72c
* eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-23 04:24:39 +00:00
matz
c519ca9500
* lib/rational.rb (Integer::gcd): replaced by gcd4 in
...
[ruby-core:07390]. [ruby-core:07377]
* eval.c: initial value for block_unique must be 1.
[ruby-talk:180420]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-20 00:55:49 +00:00
matz
26899051a0
* eval.c (rb_thread_wait_for): sleep should always sleep for
...
specified amount of time. [ruby-talk:180067]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-17 00:42:32 +00:00
matz
3b9fa79f62
* eval.c (backtrace): frame->orig_func may not be initialized.
...
[ruby-core:07367]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-15 16:17:38 +00:00
matz
2d88403b15
* eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
...
argument list. [ruby-core:07366]
* parse.y (arg): avoid unnecessary extra argument.
[ruby-core:07366]
* eval.c (rb_eval): honor visibility on OP_ASGN1 and
OP_ASGN2. [ruby-core:07366]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-15 08:46:55 +00:00
matz
9c22987f6b
* eval.c (yield_under_i): should not pass self as an argument to
...
the block for instance_eval. [ruby-core:07364]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-15 01:14:03 +00:00
matz
f2525bf0c9
* eval.c (rb_obj_instance_eval): should no singleton classes for
...
true, false, and nil. [ruby-dev:28186]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-15 00:26:14 +00:00
matz
f843f09b06
* eval.c (DMETHOD_P): accessing wrong frame. [ruby-dev:28181]
...
* eval.c (proc_invoke): preserve FRAME_DMETH flag.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-14 13:07:04 +00:00
matz
8a3d25a790
* eval.c (rb_call0): argument update propagation. [ruby-dev:28044]
...
* env.h: remove argc member from struct FRAME.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-13 09:10:55 +00:00
matz
fdbf3a76a1
* eval.c (eval): should push class from binding if supplied.
...
[ruby-core:07347]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-13 04:30:08 +00:00
matz
02de06ef1a
* eval.c (eval): no need to push ruby_class. [ruby-dev:28176]
...
* eval.c (rb_f_autoload): check if ruby_cbase is nil (during
instance_eval for objects cannot have singleton classes,
e.g. fixnums and symbols). [ruby-dev:28178]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-11 16:13:47 +00:00
akr
914e4d244f
* eval.c: apply the FreeBSD getcontext/setcontext workaround
...
only before FreeBSD 7-CURRENT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-04 13:54:53 +00:00
matz
737ef3f4a3
* eval.c (eval): need not to protect $SAFE value.
...
[ruby-core:07177]
* struct.c (rb_struct_select): update RDoc description.
[ruby-core:7254]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-02 07:18:12 +00:00
akr
f41377f226
* eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
...
IA64 to avoid reusing variable address.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-22 13:17:39 +00:00
akr
2d386e5b9a
* eval.c (ruby_setjmp): workaround for FreeBSD/i386
...
getcontext/setcontext bug.
[ruby-dev:28263]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-22 11:36:08 +00:00
akr
2fab485a46
* eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): use only for SPARC and IA64
...
before gcc 4.0.3.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-20 15:39:58 +00:00
akr
946308af67
* eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
...
if enable-shared.
(ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
too.
reported by Pav Lucistnik and Marius Strobl.
http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-18 15:01:22 +00:00
nobu
f9c6aa9f11
* eval.c (rb_thread_save_context): should not recycle scope object used
...
in a thread. fixed: [ruby-dev:28177]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-31 13:57:36 +00:00
akr
ea88f1d35e
avoid a GC problem with RUBY_ALWAYS_GC= ./ruby -e ''.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-29 16:19:44 +00:00