summaryrefslogtreecommitdiff
path: root/io.c
AgeCommit message (Collapse)Author
2007-11-09* io.c (rb_io_each_byte): should update rbuf_off and rbuf_len formatz
each iteration. [ruby-dev:31659][ruby-dev:32192] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-25* io.c (rb_io_tell, rb_io_seek): check errno too. [ruby-dev:32093]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-04* io.c (Init_IO): remove obsolete variables: $defout, $deferr.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28* io.c (rb_io_fdopen): create IO object from fd.nobu
* parse.y (yycompile): use encoding of the source as default. * ruby.c (proc_options, load_file): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28* io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to thenobu
result string, as well as getc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-25* io.c (io_ungetc): reallocate internal buffer if pushing datamatz
excess capacity. [ruby-dev:31650] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-20* io.c (popen_exec), process.c (rb_spawn): stop other threads beforenobu
exec. [ruby-core:08262] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-12* io.c (rb_io_s_sysopen): should not use alloca for unknowen sizenobu
input. [ruby-dev:31775] * parse.y (rb_id2str): ditto. * marshal.c (w_float): use snprintf instead of sprintf. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-06* io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-26* io.c (rb_io_each_byte): caused infinite loop. [ruby-dev:31652]matz
* io.c (rb_io_getc): should return nil at EOF, not EOFError. * lib/delegate.rb (SimpleDelegator::__setobj__): use raise argument to specify backtrace. * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test): String#include? no longer works for Fixnum. use #chr. [ruby-dev:31652] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25* io.c (swallow): removed condition using an unset variable.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25* encoding.c: provide basic features for M17N.matz
* parse.y: encoding aware parsing. * parse.y (pragma_encoding): encoding specification pragma. * parse.y (rb_intern3): encoding specified symbols. * string.c (rb_str_length): length based on characters. for older behavior, bytesize method added. * string.c (rb_str_index_m): index based on characters. rindex as well. * string.c (succ_char): encoding aware succeeding string. * string.c (rb_str_reverse): reverse based on characters. * string.c (rb_str_inspect): encoding aware string description. * string.c (rb_str_upcase_bang): encoding aware case conversion. downcase, capitalize, swapcase as well. * string.c (rb_str_tr_bang): tr based on characters. delete, squeeze, tr_s, count as well. * string.c (rb_str_split_m): split based on characters. * string.c (rb_str_each_line): encoding aware each_line. * string.c (rb_str_each_char): added. iteration based on characters. * string.c (rb_str_strip_bang): encoding aware whitespace stripping. lstrip, rstrip as well. * string.c (rb_str_justify): encoding aware justifying (ljust, rjust, center). * string.c (str_encoding): get encoding attribute from a string. * re.c (rb_reg_initialize): encoding aware regular expression * sprintf.c (rb_str_format): formatting (i.e. length count) based on characters. * io.c (rb_io_getc): getc to return one-character string. for older behavior, getbyte method added. * ext/stringio/stringio.c (strio_getc): ditto. * io.c (rb_io_ungetc): allow pushing arbitrary string at the current reading point. * ext/stringio/stringio.c (strio_ungetc): ditto. * ext/strscan/strscan.c: encoding support. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24* array.c (rb_ary_s_try_convert): a new class method to convertmatz
object or nil if it's not target-type. this mechanism is used to convert types in the C implemented methods. * hash.c (rb_hash_s_try_convert): ditto. * io.c (rb_io_s_try_convert): ditto. * re.c (rb_reg_s_try_convert): ditto. * string.c (rb_str_s_try_convert): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-20* io.c (rb_io_s_foreach): argument count check before makingmatz
Enumerator. [ruby-dev:31525] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-15* io.c (argf_readpartial): argf_forward needs argc and argv.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-15* io.c (ARGF_FORWARD): wrongly compares with current_file withmatz
rb_stdout. should be rb_stdin. [ruby-cvs:20177] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-15* io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppressnobu
warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-14* io.c (argf_close): always close via method.matz
* io.c (Init_IO): remove obsolete Kernel#getc. * io.c (argf_each_line): should use #each_line, not #each. * io.c (argf_each_line): simplified. * io.c (argf_getline): should handle non T_FILE object in ARGV. * io.c (argf_each_byte): each_byte should yield bytes not one-character strings. [ruby-dev:31374] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-07* io.c (pipe_open): fix for win32 platforms.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-04* io.c (pipe_open_v, pipe_open_s): separate array and stringnobu
cases. [ruby-dev:31344] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-24* io.c (rb_f_p): return nil if no argument. [ruby-dev:31285]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10* include/ruby: moved public headers.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-05* io.c (rb_f_p): returns arguments to intervene. [ruby-dev:29736]matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-04* error.c (rb_notimplement), io.c (pipe_open): removed definitenobu
articles and UNIX manual section from messages. [ruby-dev:30690] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-04* io.c (pipe_open): refined the message of NotImplementedError.nobu
[ruby-dev:30685] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-04* io.c (pipe_open): raise NotImplementedError for command "-" onnobu
platforms where fork(2) is not available. [ruby-dev:30681] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-04* io.c (popen_exec): should not close close-on-exec FDs.nobu
[ruby-dev:30679] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24* file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):nobu
renamed from OpenFile. * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h, ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c, ext/readline/readline.c, ext/socket/socket.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-13* io.c (rb_f_syscall): Fix buffer overflow with syscallknu
arguments. [ruby-bugs:PR#8541] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-05* intern.h: prepare rb_last_status_get() and rb_last_status_set().ko1
Use these functions instead of rb_last_status ([ruby-dev:30264]). * process.c: define above functions. * ext/pty/pty.c: use above functins. * io.c (pipe_finalize): ditto. * process.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-05* eval_thread.c, common.mk: remove eval_thread.c.ko1
* yarvcore.c: rename cYarvThread to rb_cThread. * gc.c: remove YARV_* prefix. * gc.h: add an include guard and prototype of rb_gc_set_stack_end(). * inits.c: fix to ANSI prototype style and reorder Init_*(). * io.c (pipe_finalize): TODO: comment out last_status. * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of rb_last_status and make last_status_get() to access $?. * yarvcore.c (vm_mark): mark yarv_vm_t#last_status. * ruby.h: add declarations of rb_cISeq and rb_cVM. * thread.c: move eval_thread.c codes to thread.c and remove yarv_* function prefix. * thread.c (thread_start_func_2): use yarv_thread_t#first_func if it is not null. * vm.c: fix copyright year. * yarvcore.c (Init_vm): rename to Init_VM(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-06* io.c (rb_io_getline_fast, rb_io_getline): increase linenonobu
when met the delimiter or EOF. fixed: [ruby-dev:30081] * io.c (prepare_getline_args, rb_io_getline_1): split preparation of arguments and reading. [ruby-dev:30085] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-06* io.c (argf_read): fix wrong replacement. [ruby-dev:30070]matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-03* io.c (rb_io_getline): lineno update condition was wrong.matz
[ruby-dev:30065] * io.c (rb_io_getline_fast): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-03* io.c (ruby_dup): start GC on ENOMEM as well.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-29* ext/stringio/stringio.c (strio_gets): accepts limit argument.matz
* ext/stringio/stringio.c (strio_readline, strio_each, strio_readlines): ditto. * ext/stringio/stringio.c (strio_getline): add limit capability. * io.c (rb_io_gets_m): accepts limit argument. [ruby-talk:231563] * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline): ditto. * io.c (appendline): add limit capability. * io.c (rb_io_getline_fast, rb_io_getline): ditto. * io.c (rb_io_getline): small refactoring for DRY. * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-16* string.c (rb_str_lines): now takes optional argument for thematz
line separator. * io.c (rb_io_lines, rb_io_bytes): new methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-23* io.c (rb_io_print): no special handling for nil as well as puts.nobu
fixed: [ruby-dev:29586] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-02* ruby.h (struct RArray): embed small arrays.matz
(RARRAY_LEN): defined for accessing array members. (RARRAY_PTR): ditto. * array.c: use RARRAY_LEN and RARRAY_PTR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31* file.c (test_identical, rb_file_s_truncate): use RSTRING_PTR andusa
RSTRING_STR. * io.c (pipe_open, rb_io_reopen): ditto. * process.c (proc_spawn_n, rb_spawn): ditto. * util.c (ruby_add_suffix): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31* ruby.h (struct RString): embed small strings.matz
(RSTRING_LEN): defined for accessing string members. (RSTRING_PTR): ditto. * string.c: use RSTRING_LEN and RSTRING_PTR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-06* io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should notakr
clear FMODE_PREP in STDERR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-03* io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) shouldakr
not fclose stderr. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27* io.c (io_close): always calls "close" method of the receiver.matz
[ruby-core:6911] [ruby-core:8112] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-03* io.c (popen_exec): close file descriptors other than standard I/Os.nobu
fixed: [ruby-dev:28924] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-02* io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.akr
(rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work. This commit is a result of hacks at the CodeFest Akihabara 2006 hosted by FSIJ. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-27* string.c: RDoc update for =~ method. a patch from Alex Youngmatz
<alex at blackkettle.org>. [ruby-core:08068] * io.c (pipe_open): backout unnecessary fix on 2006-06-26. [ruby-dev:28865] * eval.c (rb_yield_0): exact argument number check now done only for lambda Proc. * eval.c (rb_yield_0): add check for number of arguments, if there's one lambda block parameter. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-26* ext/socket/socket.c (sock_accept): revert to avoid ambiguity ofmatz
argument evaluation order. [ruby-dev:28861] * ext/socket/socket.c (sock_accept_nonblock): ditto. * io.c (pipe_open): avoid closing uninitialized file descriptors. a patch from <tommy at tmtm.org> [ruby-dev:28600] * parse.y: replace terminal token names with more descriptive name, i.e. kEND to keyword_end. [ruby-list:42477] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-20* eval.c, file.c, etc.: code-cleanup patch from Stefan Huehnermatz
<stefan at huehner.org>. [ruby-core:08029] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-13* ext/socket/socket.c (Init_socket): remove obsolete constants:matz
IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket, UNIXsocket, UNIXserver. * eval.c (formal_assign): post splat arguments should have had higher priority than optional arguments, since they are mandatory. [ruby-dev:28715] * eval.c (VIS_MASK): broken. should be 15. [ruby-dev:28715] * io.c (argf_getc): should return one-character string. [ruby-dev:28715] * io.c (rb_io_readchar): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e