summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-10* bignum.c (rb_ll2big): Don't overflow on signed integer negation.akr
* ext/bigdecimal/bigdecimal.c (MUL_OVERFLOW_SIGNED_VALUE_P): New macro. (AddExponent): Don't overflow on signed integer multiplication. (VpCtoV): Don't overflow on signed integer arithmetic. (VpCtoV): Don't overflow on signed integer arithmetic. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-10parse.y: mrhs_argnobu
* parse.y (mrhs_arg): reduce duplicated code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-10fix a typo and indent with tab instead of spaceskazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09Refactored.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09* 2013-04-10svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09* internal.h (MUL_OVERFLOW_INT_P): New macro.akr
* sprintf.c (GETNUM): Don't overflow on signed integer multiplication. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09* internal.h (MUL_OVERFLOW_SIGNED_INTEGER_P): New macro.akr
(MUL_OVERFLOW_FIXNUM_P): Ditto. (MUL_OVERFLOW_LONG_P): Ditto. * array.c (rb_ary_product): Don't overflow on signed integer multiplication. * numeric.c (fix_mul): Ditto. (int_pow): Ditto. * rational.c (f_imul): Ditto. * insns.def (opt_mult): Ditto. * thread.c (sleep_timeval): Don't overflow on signed integer addition. * bignum.c (rb_int2big): Don't overflow on signed integer negation. (rb_big2ulong): Ditto. (rb_big2long): Ditto. (rb_big2ull): Ditto. (rb_big2ll): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09* lib/open-uri.rb: Support multiple fields with same fieldakr
name (like Set-Cookie). (OpenURI::Meta#metas): New accessor to obtain fields as a Hash from field name (string) to field values (array of strings). [ruby-core:37734] [Bug #4964] reported by ren li. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09test_{env,hash}.rb: descriptive assertionsnobu
* test/ruby/test_{env,hash}.rb: use descriptive assertions than plain assert. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09compile.c: append keyword hash to splatnobu
* compile.c (iseq_compile_each): append keyword hash to argument array to splat if needed. [ruby-core:54094] [Bug #8236] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09mkmf.rb: timestamp directorynobu
* lib/mkmf.rb (timestamp_file): gather timestamp files in one directory from each extension directories, with considering target_prefix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09io.c: define EWOULDBLOCKnobu
* io.c (Init_IO): define EWOULDBLOCK alway as it is needed always. and turn runtime branch into preprocessor condition. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09Finish docs for URI::FTP by @darkhelmet [fix GH-274]hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09Fix documentation by @jc00ke [fix GH-278]hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-09Fixed comment typo by @qqshfox [fix GH-279]hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08Revert r40194 "mkmf.rb: timestamp directory"naruse
It breaks build. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* properties.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* remove trailing spaces.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08Fix #6154 by introducing new EAGAIN/EWOULDBLOCK/EINPROGRESSheadius
subclasses that include WaitReadable or WaitWritable rather than extending them into the exception object each time. * error.c: Capture EGAIN, EWOULDBLOCK, EINPROGRESS exceptions and export them for use in WaitReadable/Writable exceptions. * io.c: Create versions of EAGAIN, EWOULDBLOCK, EINPROGRESS that include WaitReadable and WaitWritable. Add rb_readwrite_sys_fail for nonblocking failures using those exceptions. Use that function in io_getpartial and io_write_nonblock instead of rb_mod_sys_fail * ext/openssl/ossl_ssl.c: Add new SSLError subclasses that include WaitReadable and WaitWritable. Use those classes for write_would_block and read_would_block instead of rb_mod_sys_fail. * ext/socket/ancdata.c: Use rb_readwrite_sys_fail instead of rb_mod_sys_fail in bsock_sendmsg_internal and bsock_recvmsg_internal. * ext/socket/init.c: Use rb_readwrite_sys_fail instead of rb_mod_sys_fail in rsock_s_recvfrom_nonblock and rsock_s_connect_nonblock. * ext/socket/socket.c: Use rb_readwrite_sys_fail instead of rb_mod_sys_fail in sock_connect_nonblock. * include/ruby/ruby.h: Export rb_readwrite_sys_fail for use instead of rb_mod_sys_fail. Introduce new constants RB_IO_WAIT_READABLE and RB_IO_WAIT_WRITABLE for first arg to rb_readwrite_sys_fail. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08mkmf.rb: timestamp directorynobu
* lib/mkmf.rb (timestamp_file): gather timestamp files in one directory from each extension directories. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08socket/extconf.rb: add -Dnobu
* ext/socket/extconf.rb: $defs needs -D or -U. nothing is added otherwize. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08socket/extconf.rb: check struct in_addr6nobu
* ext/socket/extconf.rb: check struct in_addr6, which is defined in VC6 instead of in6_addr. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08option.c: fix macro namenobu
* ext/socket/option.c (optname_to_sym): fix macro name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* 2013-04-09svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08constants.c: fix macro namenobu
* ext/socket/constants.c (rsock_cmsg_type_arg): fix macro name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08object.c: extract common codenobu
* object.c (id_for_setter): extract common code from const, class variable, instance variable setters. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08ext/depend: fix dependency for nmakenobu
* ext/depend (ENCOBJS, TRANSOBJS): use explicit path to ruby.h for nmake. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08ext/depend: fix dependencynobu
* ext/depend (ENCOBJS, TRANSOBJS): fix header dependency, VPATH has $(srcdir)/include/ruby but not $(srcdir)/include, so cannot find out ruby/ruby.h. use ruby.h instead and ../ruby for include/ruby.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* ext/depend (ENCOBJS, TRANSOBJS): Add missing dependencies.yugui
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08win32ole.c: check aritynobu
* ext/win32ole/win32ole.c (fole_missing): should check actual argument count before accessing. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08Fixes a build failure of ext/ripper/ripper.c on building out of place.yugui
* common.mk (id.h, id.c): Always generated in $(srcdir). (ext/ripper/ripper.c): Passes $(PATH_SEPARATOR) too to the sub make. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08test_curses.rb: add sentinelnobu
* test/test_curses.rb (TestCurses#run_curses): add sentinel to get rid of read pty output after the child process terminated, which causes EIO on Linux. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* lib/cgi/util.rb (CGI::unescapeHTML): fix Hexadecimal numeric character.xibbar
[Bug #8183] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08Suppress warningsnaruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* 2013-04-08svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08* object.c (rb_obj_ivar_set): call to_str for string only once.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-07* object.c (rb_mod_const_set): call to_str for string only once.naruse
to_str was called from rb_is_const_name and rb_to_id before. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-07* object.c (rb_mod_cvar_set): call to_str for string only once.naruse
to_str was called from rb_is_class_name and rb_to_id before. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-07Regexp.escape(RUBY_PLATFORM)kazu
* test/ruby/test_require.rb (TestRequire#test_require_nonascii_path): RUBY_PLATFORM should escape as Regexp, because RUBY_PLATFORM may contain '.'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-07* include/ruby/defines.h: Simplify the logic to include sys/select.h.akr
This fixes a compilation error on Haiku (gcc2 and gcc4). * configure.in: Use shared linker as $(CC) for Haiku. This fixes a build error on Haiku (gcc2). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-07* lib/resolv.rb (MDNSOneShot#sender): Delete an unused variable.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* addr2line.c: use more generic type:naruse
* u_char -> unsigned char * u_short -> unsigned short * u_int -> unsigned int * u_long -> unsigned long * quad_t -> int64_t * u_quad_t -> uint64_t * addr2line.c (imax): inline is defined by configure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06Improve ruby-electric-mode.knu
* misc/ruby-electric.el (ruby-electric-hash): New electric function that expands a hash sign inside a string or regexp to "#{}". * misc/ruby-electric.el (ruby-electric-curlies): Do not insert spaces inside when the curly brace is a delimiter of %r, %w, etc. * misc/ruby-electric.el (ruby-electric-curlies): Insert another space before a closing curly brace when ruby-electric-newline-before-closing-bracket is nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* strftime.c (rb_strftime_with_timespec): Test yday range.akr
[ruby-core:44088] [Bug #6247] reported by Ruby Submit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* 2013-04-07svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* configure.in (AC_CHECK_HEADERS): atomic.h for Solaris atomic_ops.ngoto
* ruby_atomic.h: Skip using Solaris10 atomic_ops on Solaris 9 or earlier if atomic.h is not available. [ruby-dev:47229] [Bug #8228] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* lib/resolv.rb: Support LOC resources.akr
[ruby-core:23361] [Feature #1436] by JB Smith. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40162 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* addr2line.c: quad_t and u_quad_t is not available on Solaris.ngoto
__inline is not available with old compilers on Solaris. [ruby-dev:47229] [Bug #8227] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* lib/resolv.rb: Add one-shot multicast DNS support.akr
[ruby-core:53387] [Feature #8089] by Eric Hodel. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06* lib/resolv.rb (Resolv::DNS.fetch_resource): New method to obtainakr
full result. [ruby-dev:43587] [Feature #4788] proposed by Makoto Kishimoto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e