5580 Commits

Author SHA1 Message Date
eban
7c29bcfb03 2004-09-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-24 06:00:57 +00:00
matz
c0a998d027 * parse.y (rb_parser_append_print): should handle prelude.
[llama@u01.gate0]

* parse.y (rb_parser_while_loop): ditto.

* array.c (rb_ary_subseq): original object might be modified after
  sharing data creation.  [ruby-dev:24327]

* array.c (rb_ary_replace): ditto.

* array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]

* struct.c (struct_members): always check struct size and size of
  members list in the class.  [ruby-dev:24320]

* string.c (rb_str_sub_bang): check if string is not modified
  during iteration.  [ruby-dev:24315]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-24 05:53:43 +00:00
aamine
0c9d76889a * ext/ripper/Makefile.dev: removed.
* ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
* ext/ripper/lib/ripper/core.rb: new file.
* ext/ripper/lib/ripper/core.rb.in: new file.
* ext/ripper/tools/generate-ripper_rb.rb: change comment.
* test/ripper/*.rb: on_scan removed.
* test/ripper/*.rb: event name changed: on__ -> on_.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-23 10:49:11 +00:00
matz
bf189b88d3 * eval.c: remove debug print.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-23 00:53:21 +00:00
matz
959176599c * eval.c: remove debug print.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-23 00:52:23 +00:00
matz
f1f0f39e03 * hash.c (rb_hash_rehash): replace st_foreach() by its deep
checking counterpart.  [ruby-dev:24310]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-23 00:51:32 +00:00
aamine
2c17921671 * parse.y [ripper]: on__scan event removed.
* parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
* ext/ripper/eventids2.c: ditto.
* ext/ripper/ripper.rb.in: ditto.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
* ext/ripper/lib/ripper/tokenizer: ditto.
* ext/ripper/lib/ripper/filter: new file.
* sample/ripper/colorize.rb: new file.
* sample/ripper/strip-comment.rb: new file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 05:22:50 +00:00
matz
61d1dce5a2 * hash.c (hash_alloc): was using tbl pointer without
initialization.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 04:52:17 +00:00
matz
0c97c8e335 * hash.c (rb_hash_rehash): add iteration check. [ruby-dev:24301]
* st.c (st_foreach): add deep check.

* hash.c (rb_hash_fetch): returns KeyError instead of IndexError.

* hash.c (env_fetch): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 04:48:52 +00:00
usa
56173249ef * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 04:05:11 +00:00
usa
6904429af3 2004-09-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 01:37:10 +00:00
matz
136b284b59 * parse.y: remove global variables ruby_eval_tree and
ruby_eval_tree_begin.

* array.c (rb_ary_collect_bang): element size might change during
  comparison.  [ruby-dev:24300]

* array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]

* array.c (rb_ary_eql): ditto. [ruby-dev:24300]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 00:19:15 +00:00
dave
141dae12c5 Add documentation to fork()
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-21 15:13:53 +00:00
ttate
f427cf9352 should use 'c' for 'unsigned char ref'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-21 12:47:48 +00:00
matz
bfabc05a43 * enum.c (enum_sort_by): do not use qsort directly. use
rb_ary_sort_bang() instead.  [ruby-dev:24291]

* enum.c (enum_sort_by): pedantic type check added.
  [ruby-dev:24291]

* hash.c (rb_hash_foreach_iter): check iter_lev after each
  iteration.  [ruby-dev:24289]

* array.c (rb_ary_and): element size might change during
  comparison.  [ruby-dev:24290]

* array.c (rb_ary_or): ditto. [ruby-dev:24292]

* array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-21 03:08:33 +00:00
aamine
90ae99b0f0 * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 08:47:32 +00:00
aamine
2c750e368d * test/ripper/test_scanner_events.rb: tokens must be reordered.
* ext/ripper/lib/ripper/tokenizer.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 08:42:00 +00:00
aamine
b2a700f13e * parse.y [ripper]: do not delay dispatching.
* ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 07:59:30 +00:00
eban
273d0344a8 * ext/ripper/MANIFEST: add lib/ripper/tokenizer.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 07:16:33 +00:00
aamine
d781183f42 * ext/ripper/lib/ripper/tokenizer.rb: new file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 06:18:28 +00:00
aamine
b1e943f465 * test/ripper/test_scanner_events.rb: test #lineno and #column.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 06:14:09 +00:00
aamine
3ad7a18275 * parse.y [ripper]: delayed heredocument events should be dispatched after EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 05:51:13 +00:00
aamine
144339d4bc * parse.y [ripper]: adjust lineno and columns for multi-line strings.
* parse.y [ripper]: delay heredocument events until seeing end-of-line.
* parse.y [ripper]: event on__heredoc_contentn -> on__tstring_content.
* ext/ripper/eventids2.c: ditto.
* ext/ripper/lib/ripper.rb: sync with eventids2.c.
* test/ripper/test_scanner_events.rb: test it.
* ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
* ext/ripper/Makefile.dev: support objdir build.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 05:40:23 +00:00
aamine
9f18c23572 * parse.y [ripper]: remove Ripper#pos.
* parse.y [ripper]: Ripper#column should return the column of the current token.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 04:23:18 +00:00
aamine
f2d01d1478 * parse.y [ripper]: unify old_lex_p and token_head.
* test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
* parse.y: new macro lex_goto_eol() for next change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 03:03:12 +00:00
aamine
917f067885 * parse.y [ripper]: adjust line number for heredoc. [ruby-dev:24272]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-20 02:02:58 +00:00
aamine
67bb2004b1 2004-09-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-19 19:52:49 +00:00
aamine
c2c7f4c186 * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
* ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-19 19:49:56 +00:00
aamine
f43e22190c * test/ripper/test_scanner_events.rb: test spaces before heredoc mark.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-19 19:13:19 +00:00
aamine
0ad4ae91ea * parse.y [ripper]: spaces before heredoc marker was lost.
* keywords: rb_reserved_word() should be defined only in ruby core.
* lex.c: sync with keywords.
* ext/ripper/ripper.rb.in (parse): fix typo.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-19 18:48:29 +00:00
akr
44abd80865 * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
(Zlib::GzipReader#readpartial): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-19 18:42:32 +00:00
usa
0a4e53a5c5 * parse.y: add prototypes for Microsoft compiler.
* ext/ripper/depend (parse.obj): lex.c exists at hdrdir.

* {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
  use bison.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 11:38:49 +00:00
matz
e77ddaf0d1 * array.c (rb_ary_delete): element comparison might change array
size. [ruby-dev:24273]

* parse.y: make ruby parser reentrant. merge ripper parser to the
  real one.  this change makes ruby require bison.

* file.c (rb_file_truncate): clear stdio buffer before truncating
  the file.  [ruby-dev:24191]

* ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
  which might return singleton class.  [ruby-dev:24202]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 09:24:13 +00:00
nagai
7b66963f61 * ext/tk/lib/multi-tk.rb: improve exit operation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 07:09:28 +00:00
eban
bdd1ba494b 2004-09-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 06:09:29 +00:00
nagai
2785975489 * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or (thread_)tkwait
* ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
* ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave interpreters
  (however, the 'real' eventloop must be run on the Default Master IP)
* ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
* ext/tk/sample/remote-ip_sample2.rb: ditto
* ext/tk/sample/tkoptdb-safeTk.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 06:05:33 +00:00
ttate
2ce5bb2594 added 'const char *' to use the type specifier 'S' instead of 'char *'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-16 15:22:20 +00:00
eban
5278fa5b48 2004-09-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-16 10:04:58 +00:00
gotoyuzo
b10696b568 * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
to request.user attribute.

* lib/webrick/httpservlet/filehandler.rb
  (WEBrick::HTTPServlet::FileHandler#initialize): should expand
  the pathname of document root directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-16 09:14:27 +00:00
ocean
4fbcbeb06f 2004-09-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-15 13:12:15 +00:00
nagai
3c37859186 * ext/tk/lib/tkoptdb-safeTk.rb: fix a bug depend on the changes of MultiTkIp
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-15 11:24:22 +00:00
nagai
011a851696 * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by the
previous changes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 14:59:04 +00:00
dave
0964c47816 Add simple formatter to ri
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 14:49:19 +00:00
aamine
d4e341c43d * parse.y [ripper]: Add rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 13:11:29 +00:00
aamine
d3bce8cb5a * parse.y [ripper]: space event is on__sp, not on__lwsp. [ruby-dev:24257]
* ext/ripper/eventids2.c: ditto.
* ext/ripper/lib/ripper.rb: ditto.
* ext/ripper/depend (ripper.o): No action is needed. [ruby-dev:24260]
* ext/ripper/depend: Borland make does not accept pipes in Makefile rules. [ruby-dev:24589]
* ext/ripper/depend: separate rules for developpers.
* ext/ripper/Makefile.dev: new file.
* ext/ripper/MANIFEST: add Makefile.dev.
* ext/ripper/tools/generate-eventids1.rb: read from file, not stdin.
* ext/ripper/extconf.rb: clean ripper.E.
* ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2 function was lost.
* ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly contained parser events.
* ext/ripper/lib/ripper.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 11:27:36 +00:00
eban
26a828a605 2004-09-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 08:23:57 +00:00
nagai
1130f2cbfa * ext/tcltklib/tcltklib.c: fix SEGV
* ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
* ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
* ext/tk/sample/safe-tk.rb: new sample script


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 08:01:55 +00:00
gotoyuzo
07f245da37 * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
second argument to specify the output format (see also
  X509_NAME_print_ex).

* ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
  OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
  OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.

* ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
  new module to provide the parse for RFC2253 DN format.

* ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
  new method to parse RFC2253 DN format.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 12:35:25 +00:00
eban
f3721195a9 * eval.c (blk_copy_prev): need frame_dup(). [ruby-dev:24103]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 10:20:36 +00:00
nagai
7945cd5978 * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
safe-level value argument


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 07:25:02 +00:00