summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2012-04-20merge revision(s) 35389:naruse
Use mock of Gem::Security::OPT[:trust_dir] Gem::Security::OPT[:trust_dir] depends Gem.user_home but doesn't reset on setup/teardown. NOTE: Gem.user_home won't be recovered now, so teardown doesn't work. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-19Backport security fixes for rubygems from r35404 drbrain
* lib/rubygems: Update to RubyGems 1.8.23 which contains security fixes: RubyGems now disallows redirection from HTTPS to HTTP. RubyGems now verifies SSL connections. See https://github.com/rubygems/rubygems/blob/1.8/History.txt for changes since 1.8.22. * test/rubygems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-19Backport r35374 and r35375drbrain
* lib/rubygems: Update to RubyGems 1.8.22 plus r33517 and r35337 which were ported to the rubygems git repository. See https://github.com/rubygems/rubygems/blob/1.8/History.txt for changes since 1.8.11. * test/rubygems: ditto. * lib/rubygems/version.rb: Fixed init_with warning by calling into yaml_initialize (for syck) from psych's init_with git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17merge revision(s) 34419: [Backport #6307]naruse
* lib/rexml/parsers/baseparser.rb, test/rexml/test_namespace.rb: fix the default xml namespace URI validation. [ruby-dev:45169] [Bug #5956] Reported by Miho Hiramatsu. Thanks!!! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17merge revision(s) 35363:naruse
win32/dln is only for win32. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17merge revision(s) 35354,35356,35357,35361:nobu
* dln.c (rb_w32_check_imported): skip ordinal entries. based on a patch by phasis68 (Heesob Park) at [ruby-core:44381]. [ruby-core:44371][Bug #6303] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-15merge revision(s) 34106:naruse
* test/test_pty.rb (test_pty_check_default): call PTY.check until "cat" command is finished. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-15merge revision(s) 32799:naruse
* test/ruby/test_process.rb (TestProcess#windows?): new method. * test/ruby/test_process.rb (TestProcess#*): use above method. * test/ruby/test_process.rb (TestProcess#test_execopts_redirect): windows doesn't support FD_CLOEXEC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-14merge revision(s) 35249,35250: [Backport #6296]naruse
* include/ruby/win32.h (rb_w32_aspawn_flags): add the declaration of new function. * process.c (enum): add EXEC_OPTION_PGROUP and move the position above for the usage in proc_spawn_n(). * process.c (proc_spawn_n): add an argument to pass new option `new_pgroup`. The option specifies CREATE_NEW_PROCESS_GROUP flag to CreateProcessW(). This flag is necessary for the usage of Process.kill on the subprocess on Windows. * process.c (rb_exec_arg_addopt): ditto. * process.c (rb_spawn_process): ditto. * process.c (documentation for rb_f_spawn): add documentation for new option `new_pgroup` of spawn. * test/ruby/test_process.rb (TestProcess#test_execopts_new_pgroup): add tests for option `new_pgroup`. * test/ruby/test_thread.rb (TestThreadGroup#test_thread_timer_and_interrupt): add option `new_pgroup: true` to spawn on Windows. It's needed for Process.kill on a subprocess. * win32/win32.c (CreateChild): add an argument to pass dwCreationFlags of CreateProcessW(). * win32/win32.c (rb_w32_spawn): ditto. * win32/win32.c (rb_w32_aspawn_flags): add new function to pass dwCreationFlags. * win32/win32.c (rb_w32_aspawn): refactor to move the content to rb_w32_aspawn_flags(). [ruby-core:43245][Bug #6131] * test/ruby/test_thread.rb (TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows. Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP flag is not specified in a call to CreateProcessW(). * win32/win32.c (CreateChild): revert the usage of CREATE_NEW_PROCESS_GROUP flag for compatibility. [ruby-core:43245][Bug #6131] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-14merge revision(s) 35296: [Backport #6295]naruse
* io.c (rb_io_eof): use eof() instead of io_fillbuf(). It's because io_unread() doesn't work properly when reading CRLF with read(length) and mode 'r'. [ruby-core:44189][Bug #6271] * test/ruby/test_io_m17n.rb (TestIO_M17N#test_read_crlf_and_eof): test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-14merge revision(s) 34785,35095,35098,35111,35152: [Backport #6294]naruse
* io.c (set_binary_mode_with_seek_cur): reorder function qualifiers. * test/ruby/test_io.rb (TestIO#test_pos_with_getc): added. see [Bug #6179][ruby-core:43518] * test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated. see [ruby-core:43550] * io.c (static int io_fflush): add the definition. Use it in set_binary_mode_with_seek_cur(). * io.c (set_binary_mode_with_seek_cur): refactoring to split the content into io_unread(). Fix the possibility of buffer overflow. * io.c (io_unread): add new implementation for Windows. Previous one caused invalid cursor position using IO#pos with OS text mode. New one fixes the bug. * test/ruby/test_io_m17n.rb (TestIO_M17N#test_pos_dont_move_cursor_position): add a test for above bug. [ruby-core:43497] [Bug #6179] * io.c (io_unread): fixed memory leak. report by nagachika via IRC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-07merge revision(s) 35245,35248:tenderlove
* ext/psych/lib/psych.rb: bumping up psych version to match release. * ext/psych/psych.gemspec: ditto * ext/psych/parser.c: fall back to any encoding if the external encoding is wrong. [ruby-core:44163] * test/psych/test_encoding.rb: fix test git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-04merge revision(s) 34897,34904,34906,34931:naruse
Old linux (at least CentOS 5.6, kernel 2.6.18) wakes up 4.99 sec. * test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): syntax error. * test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): call uname only on linux because it's a workaround for linux only. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-30merge revision(s) 35162,35167: [Backport #6220]naruse
* test/openssl/test_x509cert.rb: Exclude test that fails when issuing a certificate with RSA signature and DSS1 digest for earlier OpenSSL versions when used in conjunction with OpenSSL 1.0.1. Thanks, Vit Ondruch, for reporting the issue. [ruby-core:42949][Bug #6089] * ext/openssl/ossl_pkcs7.c: fix crash when parsing garbage data. * test/openssl/test_pkcs7.rb: assert correct behavior for it. Thanks to Matt Venables for reporting the issue. [ruby-core:43250][Bug #6134] * test/openssl/test_x509cert.rb: exclude test that fails when issuing git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-30merge revision(s) 35146:naruse
* string.c (str_new_empty): should copy also the encoding as an empty substring. [ruby-dev:45441][Bug #6206] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-30merge revision(s) 35013:naruse
* numeric.c: fix flodivmod for cornercases [Bug #6044] add ruby_float_mod * insns.def (opt_mod): use ruby_float_mod * internal.h: declare ruby_float_mod * test/ruby/test_float.rb: tests for above * test/ruby/envutil.rb: create helper assert_is_minus_zero git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-29merge revision(s) ↵tenderlove
32578,33401,33403,33404,33531,33655,33679,33809,33900,33965,34067,34069,34087,34328,34330,34527,34772,34783,34839,34914,34953,34954,35153: [Backport #6212] * ext/psych/lib/psych.rb: updating version to match gem * ext/psych/psych.gemspec: ditto * ext/psych/lib/psych/visitors/to_ruby.rb: fixing deprecation warning * ext/psych/lib/psych.rb: define a new BadAlias error class. * ext/psych/lib/psych/visitors/to_ruby.rb: raise an exception when deserializing an alias that does not exist. * test/psych/test_merge_keys.rb: corresponding test. * ext/psych/lib/psych.rb (load, parse): stop parsing or loading after the first document has been parsed. * test/psych/test_stream.rb: pertinent tests. * ext/psych/lib/psych.rb (parse_stream, load_stream): if a block is given, documents will be yielded to the block as they are parsed. [ruby-core:42404] [Bug #5978] * ext/psych/lib/psych/handlers/document_stream.rb: add a handler that yields documents as they are parsed * test/psych/test_stream.rb: corresponding tests. * ext/psych/lib/psych/core_ext.rb: only extend Kernel if IRB is loaded in order to stop method pollution. * ext/psych/lib/psych.rb: default open YAML files with utf8 external encoding. [ruby-core:42967] * test/psych/test_tainted.rb: ditto * ext/psych/parser.c: prevent a memory leak by protecting calls to handler callbacks. * test/psych/test_parser.rb: test to demonstrate leak. * ext/psych/parser.c: set parser encoding based on the YAML input rather than user configuration. * test/psych/test_encoding.rb: corresponding tests. * test/psych/test_parser.rb: ditto * test/psych/test_tainted.rb: ditto * ext/psych/parser.c: removed external encoding setter, allow parser to be reused. * ext/psych/lib/psych/parser.rb: added external encoding setter. * test/psych/test_parser.rb: test parser reuse * ext/psych/lib/psych/visitors/to_ruby.rb: Added support for loading subclasses of String with ivars * ext/psych/lib/psych/visitors/yaml_tree.rb: Added support for dumping subclasses of String with ivars * test/psych/test_string.rb: corresponding tests * ext/psych/lib/psych/visitors/to_ruby.rb: Added ability to load array subclasses with ivars. * ext/psych/lib/psych/visitors/yaml_tree.rb: Added ability to dump array subclasses with ivars. * test/psych/test_array.rb: corresponding tests * ext/psych/emitter.c: fixing clang warnings. Thanks Joey! * ext/psych/lib/psych/visitors/to_ruby.rb: BigDecimals can be restored from YAML. * ext/psych/lib/psych/visitors/yaml_tree.rb: BigDecimals can be dumped to YAML. * test/psych/test_numeric.rb: tests for BigDecimal serialization * ext/psych/lib/psych/scalar_scanner.rb: Strings that look like dates should be treated as strings and not dates. * test/psych/test_scalar_scanner.rb: corresponding tests. * ext/psych/lib/psych.rb (module Psych): parse and load methods take an optional file name that is used when raising Psych::SyntaxError exceptions * ext/psych/lib/psych/syntax_error.rb (module Psych): allow nil file names and handle nil file names in the exception message * test/psych/test_exception.rb (module Psych): Tests for changes. * ext/psych/parser.c (parse): parse method can take an option file name for use in exception messages. * test/psych/test_parser.rb: corresponding tests. * ext/psych/lib/psych.rb: remove autoload from psych * ext/psych/lib/psych/json.rb: ditto * ext/psych/lib/psych/tree_builder.rb: dump complex numbers, rationals, etc with reference ids. * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto * ext/psych/lib/psych/visitors/to_ruby.rb: loading complex numbers, rationals, etc with reference ids. * test/psych/test_object_references.rb: corresponding tests * ext/psych/lib/psych/scalar_scanner.rb: make sure strings that look like base 60 numbers are serialized as quoted strings. * test/psych/test_string.rb: test for change. * ext/psych/parser.c: remove unused variable. * ext/psych/lib/psych/syntax_error.rb: Add file, line, offset, and message attributes during parse failure. * ext/psych/parser.c: Update parser to raise exception with correct values. * test/psych/test_exception.rb: corresponding tests. * ext/psych/parser.c (parse): Use context_mark for indicating error line and column. * ext/psych/lib/psych/scalar_scanner.rb: use normal begin / rescue since postfix rescue cannot receive the exception class. Thanks nagachika! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26merge revision(s) 33542,33543: [Backport #6200]nobu
* parse.y (parser_nextc): set encoding for the buffer of ripper. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-18merge revision(s) 34433: [Backport #6153]naruse
* encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string is ascii only string. [ruby-core:42354] [Bug #5968] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@35078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06merge revision(s) 34917:nobu
* ext/io/console/console.c (set_rawmode): clear ECHOE and ECHOK bits too. * ext/io/console/console.c (echo_p): ignore ECHOE and ECHOK bits. [ruby-dev:45309] [Bug #6116] * ext/io/console/console.c (console_raw): fix rdoc. * ext/io/console/console.c (console_set_echo): mentioned about platform dependency. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06merge revision(s) 33785:nobu
* ext/io/console/console.c (console_cooked, console_set_cooked): new methods to reset cooked mode. [EXPERIMENTAL] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06merge revision(s) 34376:nobu
* ext/io/console/console.c (io_getch): default delegating method for StringIO. https://github.com/nobu/io-console/issues/4 * ext/stringio/stringio.c: moved some methods to hidden modules. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06merge revision(s) 34908:nobu
* ext/syck/lib/syck/rubytypes.rb (Exception.yaml_new): fix bug that causes YAML serialization problem for Exception. Exception#initialize doesn't use visible instance variable for the exception message, so call the method with the message. patched by Jingwen Owen Ou <jingweno AT gmail.com>. http://github.com/ruby/ruby/pull/41 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-01merge revision(s) r33525: [Backport #6104]naruse
* file.c (rb_file_join): honor input encodings than ASCII-8BIT. [ruby-core:40338] [Bug #5483] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-27merge revision(s) 34829:nobu
* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): since methods can be overridden, so should not make an assumption on the type of results. [ruby-core:42969][Bug #6093] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-26merge revision(s) 34821:naruse
* regparse.c (add_code_range_to_buf0): wrong condition of duplicated warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-26merge revision(s) 34819:nobu
* compile.c (iseq_compile_each): call on special object instead of self. since stabby lambda is a syntax, so it should not be affected by the context. [ruby-core:42349][Bug #5966] * insns.def (send): no special deal for FCALL. self should be put on TOS instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25merge revision(s) 34786,34787,34788,34789:naruse
* dir.c, file.c, io.c: use rb_sys_fail_path. * error.c: new functions to deal exceptions with string instances. * dir.c, file.c, io.c (rb_sys_fail_path): use rb_sys_fail_str. * test/ruby/test_literal.rb (TestRubyLiteral#test_special_const): test for https://bugs.php.net/bug.php?id=61095 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25merge revision(s) 34794,34795:naruse
* dir.c (dir_initialize): keep path in original encoding. * error.c (syserr_initialize): prefer the encoding of message over locale. [ruby-dev:45279][Bug #6071] * dir.c (dir_inspect), io.c (rb_io_inspect): keep encoding of path. [Bug #6072] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25merge revision(s) 34795:naruse
* dir.c (dir_inspect), io.c (rb_io_inspect): keep encoding of path. [Bug #6072] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25merge revision(s) 34803:naruse
* complex.c (nucomp_marshal_load): raise error on invalid data. reported by John Firebaugh [ruby-core:42860] [Bug #6076] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-24merge revision(s) 34755:naruse
* lib/ostruct.rb (delete_field): Bug fix so previous value is returned. Patch by Nick Recobra [Bug #6063] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-23merge revision(s) 34776:nobu
* parse.y (parser_tokadd_string, parser_yylex): insert a backslash if the next character is non-ascii. [ruby-dev:45278] [Bug #6069] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-23merge revision(s) 34214:naruse
* lib/uri/common.rb (URI::Parser#initialize_regexp): use \A \z instead of ^ $. [Bug #5843] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22merge revision(s) 33873:nobu
* win32/win32.c (rb_w32_uchmod): typo. [Bug#5671] [ruby-dev:44898] * test/ruby/test_file.rb (TestFile#test_chmod_m17n): test of above bug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22merge revision(s) 34750:nobu
* test/iconv/test_option.rb: enabled. [ruby-core:42802][Bug #6061] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22merge revision(s) 34735,34736:nobu
* io.c (rb_io_s_foreach): return enumerator including kerword arguments. [ruby-dev:45267][Bug #6054] * io.c (rb_io_s_foreach): argument check before making Enumerator. [ruby-dev:31525] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17merge revision(s) 34268:naruse
* test/readline/test_readline.rb (test_completion_proc_empty_result): ensure clearance of Readline's line_buffer after the test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17merge revision(s) 34255: [Backport #6035]naruse
* test/readline/test_readline.rb (test_completion_proc_empty_result): rescue NoMemoryError. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17merge revision(s) 34115:naruse
* test/readline/test_readline.rb (test_line_buffer__point): use lambda not to exit entire method by "return". or "next" for proc. [ruby-dev:45042] [Bug #5802] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17merge revision(s) 34646:naruse
* test/dbm/test_dbm.rb: fix skip condition for libgdbm 1.8.0 or prior. reported by Bohuslav Kabrda. [ruby-core:42685] [ruby-trunk - Bug #6036] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-16merge revision(s) 32731,32734,32738:naruse
------------------------------------------------------------------------ r32731 | naruse | 2011-07-29 16:17:35 +0900 (Fri, 29 Jul 2011) | 3 lines Use setrlimit(NOFILE,1) on OpenBSD. Because on OpenBSD it freezes if limit=0. ------------------------------------------------------------------------ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-15merge revision(s) 34629,34630:naruse
* cont.c (rb_fiber_reset_root_local_storage): add a new function to restore rb_thread_t::local_storage. * cont.c (rb_obj_is_fiber): add a new function to tell finalizer to prevent fibers from destroy. * gc.c (rb_objspace_call_finalizer): don't sweep fibers at finalizing objspace. * internal.h (rb_fiber_reset_root_local_storage, rb_obj_is_fiber): add prototypes. * vm.c (ruby_vm_destruct): reset main thread's local_storage before free main thread. rb_thread_t::local_storage is replaced by fiber's local storage when forked from fiber, and it should be already freed when the fiber was destroyed. * test/ruby/test_fiber.rb (test_fork_from_fiber): add test for fork from fiber. when the fiber was destroyed. [ruby-core:41456] [Bug #5700] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-15merge revision(s) 34626,34627:naruse
* ext/fiddle/closure.c (callback): same as r34506. * ext/fiddle/closure.c (callback): deal with unsinged integers. [ruby-core:42458][Bug #5991][Bug #6022] * ext/fiddle/conversions.c (value_to_generic, generic_to_value): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-15merge revision(s) r34564:nobu
* vm_eval.c (check_funcall): Call respond_to? with matching arity for legacy single-argument implementations. [ruby-trunk - Bug #6000] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-15merge revision(s) r32855,r32857,r33493,r34554:nobu
* vm_eval.c (check_funcall): try respond_to? first if redefined. [Bug #5158] * test/ruby/test_object.rb: tests that respond_to? returns false. * vm_eval.c (check_funcall): set array elements one-by-one to fix compile error with Fujitsu C Compiler 5.6 on Solaris 10 on Sparc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-14merge revision(s) 34555: [Backport #5786]naruse
* compile.c (defined_expr): guard the whole expression. [ruby-dev:45021][Bug#5786] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-14merge revision(s) 32712,32718,32719: [Backport #6014]naruse
* ext/dl/cfunc.c (dlcfunc_mark), ext/dl/cptr.c (dlptr_mark): workaround to mark wrapped object. this is not a true fix, because [Bug #4929] is caused by the interface design of DL. * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition. * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition. * ext/dl/cptr.c (rb_dlptr_s_to_ptr): use rb_check_funcall. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-14merge revision(s) 32720: [Backport #6015]naruse
* ext/dl/cptr.c (rb_dlptr_aref, rb_dlptr_aset): check NULL pointer dereference. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-14merge revision(s) 32705,32717: [Backport #6016]naruse
* test/rinda/test_rinda.rb (test_remote_array_and_hash): add local variables to protect objects from GC. [ruby-dev:44253] [Bug #5104] * test/rinda/test_rinda.rb: decrease the code that depends on timing. [Bug #372] [Bug #4160] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e