summaryrefslogtreecommitdiffstats
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
* * ext/openssl/ossl_x509store.cgotoyuzo2004-12-193-8/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (ossl_x509store_set_time): add OpenSSL::X509::Store#time=. (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=. * test/openssl/ossl_x509store.rb: test certificate validity times. * 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. * test/openssl/ossl_x509name.rb: add tests about RFC2253 DN. * text/openssl/ssl_server.rb: try to listen ports from 20443 to 20542 while EADDRINUSE is raised. * all changes in this entry are backport from 1.9. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):nobu2004-12-181-4/+5
| | | | | | | disallow interrupt by type conversion. fixed: [ruby-dev:25226] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: fix bug on setting up system encodingnagai2004-12-179-39/+152
| | | | | | | | | | | | | | | | | | | | | | * ext/tk/lib/tk/event.rb: fix error on require process * ext/tk/lib/font.rb: fix abnormal termination error on Windows * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new() accepts event-sequence arguments * ext/tk/lib/text.rb: fail to dump embedded images * ext/tk/lib/text.rb: tag_nextrange and tag_prevrange returns wrong types of values * ext/tk/lib/texttag.rb: nextrange and prevrange returns wrong types of values * ext/tk/lib/text.rb: add TkText::IndexModMethods module and TkText::IndexString class to treat text index modifiers * ext/tk/lib/texttag.rb: use TkText::IndexModMethods module * ext/tk/lib/textmark.rb: ditto * ext/tk/lib/textimage.rb: ditto * ext/tk/lib/textwindow.rb: ditto * ext/tk/lib/textimage.rb: wrong gravity of text mark for embedded image * ext/tk/lib/textwindow.rb: wrong gravity of text mark for embedded window git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl.c (ossl_raise): refine message format.gotoyuzo2004-12-161-1/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/sample/demos-en/widget: modify version check for supporting featuresnagai2004-12-161-4/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]nagai2004-12-1624-100/+187
| | | | | | | | | | | | | | | | | | | * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument * ext/tk/lib/tk.rb: add TkComm._callback_entry?() * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?() * ext/tk/lib/tk/canvastag.rb: ditto * ext/tk/lib/tk/dialog.rb: ditto * ext/tk/lib/tk/optiondb.rb: ditto * ext/tk/lib/tk/text.rb: ditto * ext/tk/lib/tk/texttag.rb: ditto * ext/tk/lib/tk/textwindow.rb: ditto * ext/tk/lib/tk/timer.rb: ditto * ext/tk/lib/tk/validation.rb: ditto * ext/tk/lib/tkextlib/*: ditto git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/curses/curses.c (window_subwin): call NUM2INT() beforeshugo2004-12-151-7/+15
| | | | | | | GetWINDOW(). (backported from CVS HEAD) git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl_x509name.c (ossl_x509name_to_a): avoid SEGVgotoyuzo2004-12-151-1/+1
| | | | | | | (rollback the previous commit). git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]matz2004-12-1518-115/+127
| | | | | | | | * lib/cgi/session.rb (CGI::Session::initialize): generate new session if given session_id does not exist. [ruby-list:40368] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* devided the method DL::Types#encode_type into three methods.ttate2004-12-143-48/+56
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun. [ruby-dev:25187]gotoyuzo2004-12-141-3/+3
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (run_trap_eval): prototype; avoid VC++ warnings.usa2004-12-111-1/+1
| | | | | | | | | * ext/socket/getaddrinfo.c: fix typo. fixed: [ruby-core:03947] * win32/win32.c: need to include dln.h. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (sock_listen): get OpenFile just before callingnobu2004-12-091-1/+3
| | | | | | | listen(2). fixed: [ruby-dev:25149] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Port socket library to VMS.akiyoshi2004-12-092-2/+11
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/sdbm/init.c (GetDBM): typo.usa2004-12-091-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]matz2004-12-093-159/+111
| | | | | | | | | * ext/sdbm/init.c: ditto. * ext/gdbm/gdbm.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" whennagai2004-12-0825-119/+662
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the running script is '-e one-liner' or '-' (stdin). * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for stub libs * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor have a wrong parent class. * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and TkWarning2 --> TkWarningObj (old names are changed to alias names) * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command' option and hashes for configuration * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the button name * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==> get_value() and value=(val) ==> set_value(val). * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton, TkOptionMenuButton = TkOptionMenubutton) * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of event_generate) for Event object * ext/tk/lib/tk/font.rb: configinfo returns proper types of values * ext/tk/lib/tk.rb: bind methods accept subst_args + block * ext/tk/lib/tk/canvas.rb: ditto * ext/tk/lib/tk/canvastag.rb: ditto * ext/tk/lib/tk/frame.rb: ditto * ext/tk/lib/tk/text.rb: ditto * ext/tk/lib/tk/texttag.rb: ditto * ext/tk/lib/tk/toplevel.rb: ditto * ext/tk/lib/tkextlib/*: ditto and bug fix git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]matz2004-12-071-0/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * process.c (proc_setgroups): [ruby-dev:25081]matz2004-12-061-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * re.c (rb_reg_eqq): document fix. [ruby-talk:122541] * ext/socket/socket.c (sock_connect): use rb_str_new4(). [ruby-dev:25052] * io.c (io_write): remove rb_str_locktmp(). [ruby-dev:25050] * io.c (io_fwrite): takes VALUE string as an argument. [ruby-dev:25050] * ext/socket/socket.c (sock_connect): remove rb_str_locktmp(). [ruby-dev:25050] * ext/socket/socket.c (udp_connect): [ruby-dev:25045] * ext/socket/socket.c (udp_bind): ditto. * ext/socket/socket.c (udp_send): ditto. * ext/socket/socket.c (bsock_send): ditto. * ext/socket/socket.c (s_recvfrom): ditto. * hash.c (rb_hash_hash): should provide "hash" method where "eql?" is redefined. [ruby-talk:122482] * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039] * hash.c (rb_hash_hash): should provide "hash" method where "eql?" is redefined. [ruby-talk:122482] * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,gotoyuzo2004-12-051-25/+40
| | | | | | | | | | | | | | | ossl_rsa_public_decrypt, ossl_rsa_private_encrypt, ossl_rsa_private_decrypt): should take an optional argument to specify padding mode. [ruby-talk:122539] * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING under OpenSSL::PKey::RSA. * test/openssl/test_pkey_rsa.rb: new file. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/readline/readline.c: check $SAFE. (backported from CVS HEAD)shugo2004-12-031-17/+57
| | | | | | | | * test/readline/test_readline.rb: added tests for readline. (backported from CVS HEAD) git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * original nkf2 revision 1.47naruse2004-12-031-20/+30
| | | | | | | | | | | * option --cp932inv turns on by default * new option --cp932: turns on all CP932 compatibility * changed option --no-cp932: turns off all CP932 compatibility git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/nkf/test.rb(mime_out2): add --no-cp932naruse2004-12-031-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/nkf/nkf.c: add constant NKF::VERSIONnaruse2004-12-031-10/+13
| | | | | | | * ext/nkf/nkf.c(guess): this becomes an alias of guess2 git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missingnagai2004-12-026-5/+71
| | | | | | | | | | | | | returns proper object. "widget.option = val" returns val, and "widget.option(val)" returns self. * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument. * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and value=(val). * ext/tk/lib/tk/spinbox.rb: callback substitution support on command option. * ext/tk/sample/demos-en/widget: bug fix (wrong image height) * ext/tk/sample/demos-jp/widget: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c (strio_write): insufficiently filled stringnobu2004-11-291-1/+1
| | | | | | | being extended when overwriting. [ruby-core:03836] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* String::IO -> StringIOakr2004-11-271-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epathnagai2004-11-269-15/+57
| | | | | | | | | * ext/tk/lib/tk/image.rb: bug fix * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only) * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bugfix for [ruby-talk:121309].ttate2004-11-253-13/+21
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use 'P' instead of 'p' in types.rb.ttate2004-11-251-3/+3
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Improved encode_type() in types.rb for [ruby-talk:121175].ttate2004-11-243-67/+128
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubuttonnagai2004-11-221-18/+41
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * original revision 1.7naruse2004-11-201-0/+60
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * add and change mime encode/decode testsnaruse2004-11-191-144/+302
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * original nkf.c rev:1.40naruse2004-11-191-168/+515
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c: needs fcntl.h for O_* constants.nobu2004-11-181-0/+5
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c, rubyio.h (rb_io_modenum_flags): exported.nobu2004-11-181-10/+12
| | | | | | | | * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as well as IO.new does. [ruby-dev:24896] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c (strio_read): position was ignored when anobu2004-11-161-1/+1
| | | | | | | buffer was passed. http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03 git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter stringmatz2004-11-143-3/+4
| | | | | | | pointer. [ruby-dev:24783] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES tricknagai2004-11-122-14/+12
| | | | | | | * ext/tk/lib/tk.rb: ditto git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * dir.c (rb_glob2): do not allocate buffer from heap to avoidmatz2004-11-101-4/+0
| | | | | | | | | | | | | | | 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: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x or oldernagai2004-11-093-0/+15
| | | | | | | * ext/tk/lib/tkextlib/tile/style.rb: bug fix git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: bind-event methods accept multi substitution arguments.nagai2004-11-079-74/+83
| | | | | | | | | | | | | * ext/tk/lib/tk/canvas.rb: ditto. * ext/tk/lib/tk/canvastag.rb: ditto. * ext/tk/lib/tk/text.rb: ditto. * ext/tk/lib/tk/texttag.rb: ditto. * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto. * ext/tk/lib/tkextlib/tktable/tktable.rb: ditto. * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: ditto git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into X_Scrollablenagai2004-11-053-17/+28
| | | | | | | | | and Y_Scrollable * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and Y_Scrollable git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"nagai2004-11-051-2/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/text.rb: sorry. bug fix again.nagai2004-11-051-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/text.rb: bug fixnagai2004-11-051-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk/variable.rb: forget to initialize instance_variablesnagai2004-11-041-0/+7
| | | | | | | of TkVarAccess objects git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_mark): enable GC stack checking.matz2004-11-042-8/+7
| | | | | | | | | | | | | | | | | | | | * string.c (str_gsub): lock strings temporarily. [ruby-dev:24687] * ext/socket/socket.c (s_recvfrom): tmplock input buffer. [ruby-dev:24705] * array.c (rb_ary_uniq_bang): do not push frozen string from hash table. [ruby-dev:24695] * array.c (rb_ary_and): ditto. * array.c (rb_ary_or): ditto. * ext/enumerator/enumerator.c (each_cons_i): pass copy of an internal consequent array. [ruby-talk:118691] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tk/lib/tk.rb: support to use different Tcl commands betweennagai2004-11-0314-47/+89
| | | | | | | | | | | | | configure and configinfo * ext/tk/lib/font.rb: ditto. * ext/tk/lib/itemconfig.rb: support to use different Tcl commands between item_configure and item_configinfo * ext/tk/lib/itemfont.rb: ditto. * ext/tk/extconf.rb: install SUPPORT_STATUS * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib) git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e