Commit graph

793 commits

Author SHA1 Message Date
usa
2807bd47af * eval.c (run_trap_eval): prototype; avoid VC++ warnings.
* ext/socket/getaddrinfo.c: fix typo. fixed: [ruby-core:03947]

* win32/win32.c: need to include dln.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-11 03:44:40 +00:00
eban
e237540e7b * eval.c (proc_invoke): use volatile tmp' rather than args'.
[ruby-core:03882]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-04 05:58:06 +00:00
matz
379e85a5f5 * eval.c (proc_invoke): copy arguments to frame.argv.
[ruby-core:03861]

* object.c (convert_type): use rb_respond_to() again.
  [ruby-dev:25021]

* eval.c (rb_respond_to): funcall respond_to? if it's redefined.
  [ruby-dev:25021]

* io.c (rb_file_initialize): [ruby-dev:25032]

* lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
  marshaled again.  [ruby-core:03862]

* io.c (rb_io_ctl): [ruby-dev:25019]

* io.c (io_fread): need not to null terminate.  [ruby-dev:24998]

* io.c (read_all): remove unnecessary rb_str_resize().
  [ruby-dev:24996]

* io.c (io_read): ditto.

* io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-03 09:30:33 +00:00
nobu
d8bb4ebcb6 * eval.c (rb_protect): prevent continuations created inside from being
called from the outside.  [ruby-dev:25003]

* eval.c (rb_callcc, rb_cont_call): prohibit calling from different
  signal contexts.  [ruby-dev:25022]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-02 07:41:50 +00:00
nobu
fd6cd54474 * eval.c (thread_mark): mark thread group. [ruby-dev:25020]
* eval.c (thgroup_add): check whether the argument is really a Thread.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-02 00:31:17 +00:00
matz
f6348ca0ea * object.c (convert_type): [ruby-core:03845]
* eval.c (rb_funcall_rescue): new function.

* object.c (rb_Array): avoid using rb_respond_to().

* object.c (rb_Integer): ditto.

* eval.c (get_backtrace): no conversion for nil.

* parse.y (reduce_nodes): empty body should return nil.

* lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-29 06:13:52 +00:00
matz
13e9c5ed18 * eval.c (method_missing): raise TypeError for classes do not
have allocators.  [ruby-core:03752]

* lib/erb.rb: [ruby-core:03786]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-26 05:01:13 +00:00
matz
39080991ab * file.c (rb_file_chown): integer conversion should be prior to
GetOpenFile().  [ruby-dev:24947]

* file.c (rb_file_truncate): ditto.

* file.c (rb_file_s_truncate): ditto.

* dir.c (dir_seek): use NUM2OFFT().

* misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]

* dir.c (dir_seek): should retrieve dir_data after NUM2INT().
  [ruby-dev:24941]

* string.c (rb_str_splice): should place index wrapping after
  possible modification.  [ruby-dev:24940]

* eval.c (error_print): nicer traceback at interrupt.
  [ruby-core:03774]

* string.c (str_gsub): internal buffer should not be listed by
  ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]

* lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
  exception if data corresponding to session specified from the
  client does not exist.

* string.c (str_gsub): internal buffer should not be listed by
  ObjectSpace.each_object().  [ruby-dev:24919]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-22 15:29:52 +00:00
usa
54c24dfc99 * eval.c (ruby_options): now we cannot call rb_glob() before
ruby_init(), so call rb_w32_cmdvector() at ruby_options().

* win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
  export it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-12 06:06:15 +00:00
matz
c5789b5075 * dir.c (rb_glob2): do not allocate buffer from heap to avoid
memory leaks.  use string object for buffering instead.
  [ruby-dev:24738]

* dir.c (join_path): ditto.

* io.c (io_read): external input buffer may be modified even after
  rb_str_locktmp().  [ruby-dev:24735]

* dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-10 07:17:53 +00:00
matz
9c56a298e8 * eval.c (proc_invoke): nail down dyna_var node when Proc object
or continuation is created.  [ruby-dev:24671]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-01 23:53:50 +00:00
matz
c2a9b62fd2 * string.c (rb_str_locktmp): lock string temporarily.
* string.c (str_independent): add tmplock check.

* io.c (io_write): lock output string temporarily.
  [ruby-dev:24649]

* io.c (io_write): use rb_str_locktmp().

* io.c (read_all): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-30 15:33:03 +00:00
matz
c579593b41 * eval.c (rb_thread_start_0): forget to free some memory chunks.
[ruby-core:03611]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-29 07:59:42 +00:00
matz
5e2fbb9cfa * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-29 01:06:37 +00:00
matz
ece87af00c * string.c (RESIZE_CAPA): check string attribute before modifying
capacity member of string structure.  [ruby-dev:24594]

* ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
  performance.  [ruby-talk:117701]

* sprintf.c (rb_f_sprintf): raise ArgumentError for extra
  arguments, unless (digit)$ style used.

* ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
  performance.  [ruby-talk:117701]

* sprintf.c (rb_f_sprintf): raise ArgumentError for extra
  arguments, unless (digit)$ style used.

* eval.c (frame_free): Guy Decoux solved the leak problem.
  Thanks.  [ruby-core:03549]

* ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
  to avoid potential vulnerability.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-27 02:46:54 +00:00
nobu
31e85bd001 * eval.c (get_backtrace): ignore illegal backtrace. [ruby-dev:24587]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-24 23:04:04 +00:00
nobu
3b6dac4e1d * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
frozen shared string to avoid outside modification.  [ruby-dev:24580]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-23 15:41:17 +00:00
matz
1f9c8c0650 * eval.c (rb_alias): was warning for wrong condition.
[ruby-dev:24565]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-22 03:05:10 +00:00
matz
6dea159d03 * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
field of a buffer.  [ruby-dev:24562]

* eval.c (rb_alias): should warn on method discarding.
  [ruby-dev:24546]

* ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
  string buffer by clearing klass.  [ruby-dev:24548]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-21 15:27:25 +00:00
matz
2ec51ee0d5 * string.c (str_gsub): reentrant check. [ruby-dev:24432]
* backport all SEGV bug fixes from CVS HEAD.  [ruby-dev:24536]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-20 12:47:20 +00:00
nobu
959077c8e0 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-20 10:29:29 +00:00
matz
860bdc3b61 * io.c (read_all): block string buffer modification during
rb_io_fread() by freezing it temporarily. [ruby-dev:24479]

* dir.c (rb_push_glob): block call at once the end of method.
  [ruby-dev:24487]

* ext/enumerator/enumerator.c (enum_each_slice): remove
  rb_gc_force_recycle() to prevent potential SEGV.
  [ruby-dev:24499]

* ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
  buffer by clearing klass.  [ruby-dev:24510]

* ext/socket/socket.c (sock_s_getservbyaname): protocol string
  might be altered.  [ruby-dev:24503]

* string.c (rb_str_upto): check if return value from succ is a
  string.  [ruby-dev:24504]

* io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
  avoid mode string modification.  [ruby-dev:24454]

* io.c (rb_io_getline_fast): should take delim as unsigned char to
  distinguish EOF and '\377'.  [ruby-dev:24460]

* io.c (rb_io_getline): add check for RS modification.
  [ruby-dev:24461]

* enum.c (enum_sort_by): use qsort() directly instead using
  rb_iterate().  [ruby-dev:24462]

* enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
  prevent access to recycled object (via continuation for
  example).  [ruby-dev:24463]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-19 10:25:23 +00:00
nobu
e54022001d * indent and tabify
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-18 23:48:49 +00:00
akr
84ce932c03 eval.c (Init_stack): make prototype declaration consistent with the definition in gc.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-15 03:54:02 +00:00
matz
f433be6d9c * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
ALLOCA_N() to prevent modification.  [ruby-dev:24438]

* io.c (rb_io_mode_flags): preserve append mode flag.
  [ruby-dev:24436]

* io.c (rb_io_modenum_mode): do not use external output buffer.

* string.c (rb_str_justify): differ pointer retrieval to prevent
  padding string modification.  [ruby-dev:24434]

* range.c (range_each_func): allow func to terminate loop by
  returning RANGE_EACH_BREAK.

* range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]

* marshal.c (r_byte): retrieve pointer from string value for each
  time.  [ruby-dev:24404]

* marshal.c (r_bytes0): ditto.

* enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]

* io.c (io_read): should freeze all reading buffer.
  [ruby-dev:24400]

* string.c (rb_str_sum): should use bignums when bits is greater
  than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]

* eval.c (specific_eval): defer pointer retrieval to prevent
  unsafe sourcefile string modification.  [ruby-dev:24382]

* eval.c (specific_eval): defer pointer retrieval to prevent
  unsafe sourcefile string modification.  [ruby-dev:24382]

* string.c (rb_str_sum): wrong cast caused wrong result.
  [ruby-dev:24385]

* enum.c (enum_sort_by): hide temporary array from
  ObjectSpace.each_object.  [ruby-dev:24386]

* string.c (rb_str_sum): check was done with false pointer.
  [ruby-dev:24383]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-06 15:15:12 +00:00
matz
6f9dcadf6e * string.c (rb_str_sum): check was done with false pointer.
[ruby-dev:24383]

* string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]

* eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
  sourcefile string modification.  [ruby-dev:24373]

* io.c (io_read): block string buffer modification during
  rb_io_fread() by freezing it temporarily. [ruby-dev:24366]

* io.c (rb_io_s_popen): mode argument may be altered.
  [ruby-dev:24375]

* file.c (rb_file_s_basename): ext argument may be altered.
  [ruby-dev:24377]

* enum.c (enum_sort_by): use NODE instead of 2 element arrays.
  [ruby-dev:24378]

* string.c (rb_str_chomp_bang): StringValue() may change the
  receiver.  [ruby-dev:24371]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-02 03:50:53 +00:00
eban
dc5ea1179a * eval.c (blk_copy_prev): need frame_dup(). [ruby-dev:24103]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 10:29:43 +00:00
matz
0c246b5c2e * eval.c (cvar_cbase): singletons should refer outer cvar scope.
[ruby-dev:24223]

* eval.c (rb_load): should preserve previous ruby_wrapper value.
  [ruby-dev:24226]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-06 01:02:10 +00:00
matz
2088be1dac * eval.c (cvar_cbase): class variables cause SEGV in
instance_eval() for fixnums and symbols. [ruby-dev:24213]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-03 17:41:27 +00:00
matz
01e181146a * struct.c (make_struct): remove redefining constant when
conflict.  [ruby-dev:24210]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-03 09:00:52 +00:00
eban
9c7dc7a00a * eval.c (rb_obj_instance_eval): backported from HEAD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-02 02:37:48 +00:00
matz
a9191c44ca * bignum.c (rb_big_and): protect parameters from GC.
[ruby-talk:110664]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-28 14:20:44 +00:00
dave
0779c3f960 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-25 19:39:18 +00:00
nobu
36cf9e9dbd * eval.c (rb_obj_instance_eval): evaluates under special singleton
classes as for special constants.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-18 03:53:50 +00:00
matz
ecf157699d * io.c (rb_io_reopen): should clear allocated OpenFile. pointed
out by Guy Decoux. [ruby-core:03288]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-17 08:31:02 +00:00
matz
a99ce7f39c * eval.c: backout argv copy on write changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-28 04:31:20 +00:00
matz
ddc68cfb71 * eval.c (rb_eval): copy on write for argument local variable
assignment.

* eval.c (assign): ditto.

* eval.c (rb_call0): update ruby_frame->argv with the default
  value used for the optional arguments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-27 08:36:00 +00:00
matz
23341b7a4c * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
permission of the session data file to 0600.

* lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-23 00:11:34 +00:00
matz
b74286e423 * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
process expression interpolation.  [ruby-talk:106691]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-22 03:50:33 +00:00
matz
e98d5d4f66 * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
[ruby-talk:106657]  The solution was found by Guy Decoux.

* file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
  #dev_minor. [ruby-core:03195]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-17 02:23:52 +00:00
nobu
e1ae794e73 * eval.c (return_jump, break_jump): raise unexpceted local jump
exception directly.  [ruby-dev:23740]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-16 06:21:39 +00:00
ocean
99a04c1adf * class.c, error.c, eval.c, intern.h, object.c, variable.c:
do not set path if it is a singleton class.  [ruby-dev:22588]
  (backport from 1.9)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-15 11:42:51 +00:00
nobu
7808175f0f * eval.c (rb_thread_raise): accept third argument as well as
Kernel#raise, and evaluate the arguments to create an exception in
  the caller's context.  [ruby-talk:105507]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-09 05:29:45 +00:00
nobu
1ae90f48b7 * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
is a set of bit flags.  [ruby-dev:23859]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-05 00:03:50 +00:00
nobu
4c20725d55 * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
* gc.c (define_final, run_final): preserve and restore safe level for
  finalizers.  [ruby-core:03058]

* signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
  safe level for signal handlers.  [ruby-dev:23829]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-29 01:31:37 +00:00
matz
68a117d8e2 * eval.c (rb_thread_atfork): remove "fork terminates thread"
warning.  [ruby-dev:

* object.c (rb_obj_clone): backport FL_FINALIZE patch from 1.9.
  [ruby-core:02786][ruby-core:03067]

* ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
  should give us packed address, not struct sockaddr.
  [ruby-core:03053]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-24 23:31:29 +00:00
nobu
6b7e83a4c8 * eval.c (method_call): allow changing $SAFE. [ruby-dev:23713]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-19 04:24:34 +00:00
nobu
37d443fd54 * eval.c (eval): adjust indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-18 14:52:07 +00:00
nobu
5d14e8c830 * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
safe level.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-18 14:12:42 +00:00
matz
36eb460780 * eval.c (rb_mod_freeze): prepare string representation before
freezing. [ruby-talk:103646]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-16 14:21:34 +00:00