Граф коммитов

826 Коммитов

Автор SHA1 Сообщение Дата
eban e28a9a7b94 * dir.c (rb_glob, rb_globi): remove unnecessary FNM_PATHNAME.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-02 12:07:30 +00:00
matz fd06a2a7fb * eval.c (block_pass): should not downgrade safe level.
* ext/dbm/extconf.rb: allow specifying dbm-type explicitly.

* ext/dbm/extconf.rb: avoid gdbm if possible, because it leaks
  memory, whereas gdbm.so doesn't.  potential incompatibility.

* string.c (rb_str_insert): new method.

* parse.y (yylex): lex_state after RESCUE_MOD should be EXPR_BEG.

* array.c (rb_ary_insert): new method.

* array.c (rb_ary_update): new utility function.

* io.c (set_outfile): should check if closed before assignment.

* eval.c (rb_eval): should preserve value of ruby_errinfo.

* eval.c (rb_thread_schedule): infinite sleep should not cause
  dead lock.

* array.c (rb_ary_flatten_bang): proper recursive detection.

* eval.c (yield_under): need not to prohibit at safe level 4.

* pack.c (pack_pack): p/P packs nil into NULL.

* pack.c (pack_unpack): p/P unpacks NULL into nil.

* pack.c (pack_pack): size check for P template.

* ruby.c (set_arg0): wrong predicate when new $0 value is bigger
  than original space.

* gc.c (id2ref): should use NUM2ULONG()

* object.c (rb_mod_const_get): check whether name is a class
  variable name.

* object.c (rb_mod_const_set): ditto.

* object.c (rb_mod_const_defined): ditto.

* marshal.c (w_float): precision changed to "%.16g"

* eval.c (rb_call0): wrong retry behavior.

* numeric.c (fix_aref): a bug on long>int architecture.

* eval.c (rb_eval_string_wrap): should restore ruby_wrapper.

* regex.c (re_compile_pattern): char class at either edge of range
  should be invalid.

* eval.c (handle_rescue): use === to compare exception match.

* error.c (syserr_eqq): comparison between SytemCallErrors should
  based on their error numbers.

* eval.c (safe_getter): should use INT2NUM().

* bignum.c (rb_big2long): 2**31 cannot fit in 31 bit long.

* regex.c (calculate_must_string): wrong length calculation.

* eval.c (rb_thread_start_0): fixed memory leak.

* parse.y (none): should clear cmdarg_stack too.

* io.c (rb_fopen): use setvbuf() to avoid recursive malloc() on
  some platforms.

* file.c (rb_stat_dev): device functions should honor stat field
  types (except long long such as dev_t).

* eval.c (rb_mod_nesting): should not push nil for nesting array.

* eval.c (rb_mod_s_constants): should not search array by
  rb_mod_const_at() for nil (happens for singleton class).

* class.c (rb_singleton_class_attached): should modify iv_tbl by
  itself, no longer use rb_iv_set() to avoid freeze check error.

* variable.c (rb_const_get): error message "uninitialized constant
  Foo at Bar::Baz" instead of "uninitialized constantBar::Baz::Foo".

* eval.c (rb_mod_included): new hook called from rb_mod_include().

* io.c (opt_i_set): should strdup() inplace_edit string.

* eval.c (exec_under): need to push cref too.

* eval.c (rb_f_missing): raise NameError for "undefined local
  variable or method".

* error.c (Init_Exception): new exception NoMethodError.
  NameError moved under ScriptError again.

* eval.c (rb_f_missing): use NoMethodError instead of NameError.

* file.c (Init_File): should redifine "new" class method.

* eval.c (PUSH_CREF): sharing cref node was problematic.  maintain
  runtime cref list instead.

* eval.c (rb_eval): copy defn node before registering.

* eval.c (rb_load): clear ruby_cref before loading.

* variable.c (rb_const_get): no recursion to show full class path
  for modules.

* eval.c (rb_set_safe_level): should set safe level in curr_thread
  as well.

* eval.c (safe_setter): ditto.

* object.c (rb_obj_is_instance_of): nil belongs to false, not true.

* time.c (make_time_t): proper (I hope) daylight saving time
  handling for both US and Europe.  I HATE DST!

* eval.c (rb_thread_wait_for): non blocked signal interrupt should
  stop the interval.

* eval.c (proc_eq): class check aded.

* eval.c (proc_eq): typo fixed ("return" was ommitted).

* error.c (Init_Exception): move NameError under StandardError.

* class.c (rb_mod_clone): should copy method bodies too.

* bignum.c (bigdivrem): should trim trailing zero bdigits of
  remainder, even if dd == 0.

* file.c (check3rdbyte): safe string check moved here.

* time.c (make_time_t): remove HAVE_TM_ZONE code since it
  sometimes reports wrong time.

* time.c (make_time_t): remove unnecessary range check for
  platforms where negative time_t is available.

* process.c (proc_waitall): should push Process::Status instead of
  Finuxm status.

* process.c (waitall_each): should add all entries in pid_tbl.
  these changes are inspired by Koji Arai.  Thanks.

* process.c (proc_wait): should not iterate if pid_tbl is 0.

* process.c (proc_waitall): ditto.

* numeric.c (flodivmod): a bug in no fmod case.

* process.c (pst_wifsignaled): should apply WIFSIGNALED for status
  (int), not st (VALUE).

* io.c (Init_IO): value of $/ and $\ are no longer restricted to
  strings.  type checks are done on demand.

* class.c (rb_include_module): module inclusion should be check
  taints.

* ruby.h (STR2CSTR): replace to StringType() and StringTypePtr().

* ruby.h (rb_str2cstr): ditto.

* eval.c (rb_load): should not copy topleve local variables.  It
  cause variable/method ambiguity.  Thanks to L. Peter Deutsch.

* class.c (rb_include_module): freeze check at first.

* eval.c (rb_attr): sprintf() and rb_intern() moved into
  conditional body.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-02 04:22:21 +00:00
knu 902524c35b These files are also obsoleted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 20:37:16 +00:00
knu 30a7496b22 Merge from irb-tools 0.7.1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 18:25:04 +00:00
knu 8752585250 Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 18:17:38 +00:00
knu 71eab67953 * sample/irb.rb, lib/irb.rb, lib/irb/*, doc/irb/*: Merge from irb
0.7.3.

* instruby.rb: Install help-message's too.

* lib/irb/main.rb: This file is not needed anymore.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 18:11:08 +00:00
knu 11c4bcea39 This file is not needed anymore.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 18:05:39 +00:00
knu 50e19a0ede Install help-message's too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 17:55:56 +00:00
knu 859a7a9277 Merge from irb 0.7.3.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 17:54:55 +00:00
knu f8ab487e4d Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-30 17:38:21 +00:00
eban e32f6a8269 * configure.in: don't use tzname on cygwin 1.3.1+.
* configure.in: add -mieee/-ieee to CFLAGS on OSF1/Alpha
  to disable "DIVISION BY ZERO" exception.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-26 13:58:10 +00:00
knu 4dfc822aec * ext/extmk.rb.in, lib/mkmf.rb: (dir_config) do not add the
specified include directory if already included in $CPPFLAGS.

* ext/extmk.rb.in, lib/mkmf.rb: (dir_config) return a more useful
value, [include_dir, lib_dir].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-24 06:21:58 +00:00
eban eccb4d0210 * configure.in: add -mieee to CFLAGS on Linux/Alpha
to disable "DIVISION BY ZERO" exception.

* configure.in: remove -ansi on OSF/1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-22 09:49:15 +00:00
wakou cc8165ad23 Wed Apr 18 04:37:51 2001 Wakou Aoyama <wakou@fsinet.or.jp>
* lib/cgi.rb: CGI::Cookie: no use PATH_INFO.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-17 19:43:27 +00:00
usa 8399471902 * win32/config.status.in: no longer use missing/alloca.c.
* win32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-14 04:38:19 +00:00
shugo bacf9d9ece * lib/net/imap.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-09 02:58:56 +00:00
eban e2de605439 * ext/extmk.rb.in (create_makefile): create def file only if
it does not yet exist.
* lib/mkmf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-03 01:16:14 +00:00
eban 57ca9e547b 2001-04-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-02 10:38:52 +00:00
shugo 619aa50e25 * lib/monitor.rb (wait): fix timeout support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-02 05:27:49 +00:00
shugo 8eeaf69e52 * lib/monitor.rb (wait): ensure reentrance.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-02 04:59:43 +00:00
shugo 3c0af9ca44 * lib/net/imap.rb (media_subtype): return subtype.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-02 03:41:35 +00:00
shugo 41aac21944 * lib/net/imap.rb (flag_list): capitalize flags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-02 03:03:29 +00:00
knu 286cddd445 * Makefile.in: Introduce MAINLIBS.
* configure.in: Link libc_r against the ruby executable on
FreeBSD, which is the first attempt to work around a certain
problem regarding pthread on FreeBSD.  It should make ruby/libruby
happy when it loads an extention to a library compiled and linked
with -pthread.  Note, however, that libruby is _not_ linked with
libc_r so as not to mess up pthread unfriendly stuff including
apache+mod_ruby and vim6+ruby_interp.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-01 16:53:41 +00:00
eban 2ed9c79bbb * win32/win32.c: use ruby's opendir on mingw32.
* win32/dir.h, dir.c, Makefile: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-01 16:22:13 +00:00
shugo 8de229963c * lib/net/imap.rb: add document and example code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-30 19:51:33 +00:00
shugo c32024a3b5 * lib/net/imap.rb: rename ContinueRequest to ContinuationRequest.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-30 13:59:26 +00:00
knu 65579c6b31 * ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
rules for the mswin32 platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 14:47:44 +00:00
knu 03f06165b8 * ext/extmk.rb.in, lib/mkmf.rb: move C++ rules to the right place.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 10:35:40 +00:00
matz 62261ccb47 * object.c (rb_str2cstr): warn if string contains \0 and length
value is ignored.

* class.c (rb_singleton_class_clone): should copy class constant
  table as well.

* class.c (rb_include_module): sometimes cache was mistakenly left
  uncleared - based on the patch by K.Kosako.

* ruby.h: all Check_SafeStr()'s are replaced by SafeStr() to
  ensure 'to_str' be always effective.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 08:43:25 +00:00
eban 6771ffa971 * win32/Makefile.sub: disable global optimization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 00:54:48 +00:00
matz b60a365763 * eval.c (rb_mod_define_method): should have clear method cache.
* eval.c (rb_mod_define_method): should have raised exception for
  type error.

* ruby.h: changed "extern INLINE" to "static inline".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-27 07:10:58 +00:00
eban 2559f0d90d * time.c (rb_strftime): check whether strftime returns empty string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 14:29:57 +00:00
shugo 253f65aa4e * lib/net/imap.rb: added example.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 12:32:38 +00:00
shugo 2d32e4dd6d * lib/net/imap.rb: supports response handlers and multiple commands.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 12:29:50 +00:00
eban 4beca99d16 * ext/md5/md5init.c (md5i_new): remove rb_scan_args().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 09:27:18 +00:00
matz de51a663b4 * eval.c: remove TMP_PROTECT_END to prevent C_ALLOCA crash.
* file.c (rb_file_flock): do not trap EINTR.

* missing/flock.c (flock): returns the value from lockf(2)
  directly.

* eval.c (ev_const_defined): should ignore toplevel cbase (Object).

* eval.c (ev_const_get): ditto.

* ext/md5/md5.h: replace by independent md5 implementation
  contributed by L. Peter Deutsch (thanks).

* ext/md5/md5init.c: adopted to Deutsch's md5 implementation.

* pack.c (pack_unpack): string from P/p should be tainted.

* ext/curses/curses.c: curses on Mac OS X public beta does not
  have _maxx etc.

* marshal.c (w_object): should truncate trailing zero short for
  bignums.

* object.c (sym_intern): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 08:57:16 +00:00
matz 44f754bd87 * eval.c: remove TMP_PROTECT_END to prevent C_ALLOCA crash.
* ext/Win32API/Win32API.c: remove Init_win32api().

* file.c (rb_file_flock): do not trap EINTR.

* missing/flock.c (flock): returns the value from lockf(2)
  directly.

* eval.c (ev_const_defined): should ignore toplevel cbase (Object).

* eval.c (ev_const_get): ditto.

* ext/md5/md5.h: replace by independent md5 implementation
  contributed by L. Peter Deutsch (thanks).

* ext/md5/md5init.c: adopted to Deutsch's md5 implementation.

* pack.c (pack_unpack): string from P/p should be tainted.

* ext/curses/curses.c: curses on Mac OS X public beta does not
  have _maxx etc.

* marshal.c (w_object): should truncate trailing zero short for
  bignums.

* object.c (sym_intern): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 08:54:06 +00:00
eban c8e0e1114a * ext/Win32API/Win32API.c: remove Init_win32api().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 05:11:18 +00:00
eban 9c33e4e6b4 * ext/Win32API/extconf.rb: add -fno-omit-frame-pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-22 13:23:36 +00:00
matz 9123ec551d * eval.c (rb_mod_nesting): should not include Object at the
toplevel.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-22 09:19:57 +00:00
matz 285cb99ba4 * ruby.h: better inline function support.
* configure.in (NO_C_INLINE): check if inline is available for the
  C compiler.

* marshal.c (r_object): len calculation patch was wrong for
  machines SIZEOF_BDIGITS == SIZEOF_SHORT.

* gc.c: alloca prototype reorganized for C_ALLOCA machine.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-22 08:59:26 +00:00
eban 22198c30b1 * win32/win32.c (isUNCRoot): multibyte character support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 15:18:05 +00:00
eban 424c3fb43d * win32/win32.c (win32_stat): WinNT/2k "//host/share" support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 14:12:09 +00:00
eban 7aaceb6d9a rb_iglob -> rb_globi
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 04:18:10 +00:00
matz 9ea56f8efe * ruby.h: rb_sys_stat -> stat
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 03:51:23 +00:00
matz 9910feef4f * gc.c (id2ref): sometimes confused symbol and reference.
* dir.c (glob_helper): breaks loop after calling recusive
  glob_helper; all wild cards should be consumed; no need for
  further match.

* dir.c (dir_s_glob): gives warning if no match found.

* object.c (sym_inspect): did allocate extra byte space.

* marshal.c (shortlen): shortlen should return number of bytes
  written.

* eval.c (ev_const_defined): need not to check if cbase->nd_class
  is rb_cObject.

* eval.c (ev_const_get): ditto.

* time.c (time_zone): return "UTC" for UTC time objects.

* eval.c (THREAD_ALLOC): flags should be initialized.

* signal.c (rb_f_kill): should use FIX2INT, not FIX2UINT.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 03:41:45 +00:00
usa 98e25a542a * win32/dir.h: replace missing/dir.h .
* win32/win32.h: ditto.
* win32/win32.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-20 23:10:05 +00:00
eban a84d087d3c * win32/win32.c (win32_stat): UNC support.
* dir.c (extract_path): fix "./*" problem.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-20 14:50:43 +00:00
matz 1f904eed44 * dir.c (glob_helper): replace lstat() by stat() to follow symlink
in the case like 'symlink/*'.

* dir.c (glob_helper): gave warning too much.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-19 03:20:24 +00:00
wakou aa6fa0c75d very sorry check miss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-18 01:20:56 +00:00