Age | Commit message (Collapse) | Author |
|
[Fixes GH-409] https://github.com/ruby/ruby/pull/409
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c: rename heap.free_num as heap.swept_num to clarify meaning and
avoid confusion with objspace_free_num().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (objspace_free_num): new method for available/free slots on
heap. [ruby-core:57633] [Bug #8983]
* gc.c (gc_stat): change heap_free_num definition to use new method.
* test/ruby/test_gc.rb: test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c: add rb_objspace.limit to keep accurate count of total heap
slots [ruby-core:57633] [Bug #8983]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/csv.rb (CSV.foreach): support enumerator. based on a patch by
Hanmac (Hans Mackowiak) at [ruby-core:57643]. [ruby-core:57283]
[Feature #8929]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* win32/win32.c (console_emulator_p, constat_handle): disable built-in
console colorizing when console-emulator-like DLL is injected.
[Feature #8201]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
CALC_EXACT_MALLOC_SIZE is true.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* common.mk (yes-test-sample): use RUNRUBY instead of MINIRUBY to set
runtime library path and run the built ruby. [Bug #8971]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
body given to eval-after-load is evaluated immediately!
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
When a system had no interface, this function used xmalloc for root
but did not return any reference to it. This patch fixes it by
immediately returning an empty array if no interface is found.
Coverity Scan found this bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
out of scope. Coverity Scan found this bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (GC_MALLOC_LIMIT_MAX): change default value
(256MB -> 512MB) and permit zero to ignore max value.
* gc.c (vm_malloc_increase, vm_xrealloc): do not cause GC on realloc.
* gc.c (gc_before_sweep): change debug messages.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* io.c (rb_io_close_read): duplex IO should wait its child process
even after close_read.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
clang says "Note that marketing version numbers should not be used
to check for language features, as different vendors use different
numbering schemes. Instead, use the Feature Checking Macros."
http://clang.llvm.org/docs/LanguageExtensions.html
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* io.c (rb_io_close_write): detach tied IO for writing before closing
to get rid of race condition. [ruby-list:49598]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* io.c (rb_io_close_read): keep fptr in write_io to be discarded, to
fix freed pointer access when it is in use by other threads, and get
rid of potential memory/fd leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
4.0+ instead of just on 4.2. Clang has supported the unused attribute
since before version 4, so this should be safe.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/tempfile.rb (Tempfile#unlink): finalizer is no longer needed
after unlinking. patched by by normalperson (Eric Wong) at
[ruby-core:56521] [Bug #8768]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* file.c (stat_new_0): constify.
* file.c (rb_stat_new): constify and export. based on a patch by
Hanmac (Hans Mackowiak) at [ruby-core:53225]. [Feature #8050]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* include/ruby/ruby.h (ruby_safe_level_4_warning): needed by extension
libraries which check safe level 4. [ruby-dev:47517] [Bug #8652]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
issues and several duplicate grammar bugs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
small grammar typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
ObjectSpace::trace_object_allocations.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ObjectSpace::trace_object_allocations_start
* ObjectSpace::trace_object_allocations_stop
* ObjectSpace::trace_object_allocations_clear
And some refactoring.
* test/objspace/test_objspace.rb: add a test for new methods.
* NEWS: add a description for new methods.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
This fix may solve a failure of
TestTracepointObj#test_tracks_objspace_events
[test/-ext-/tracepoint/test_tracepoint.rb:43].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
of a refined method is not defined.
* vm_insnhelper.c (rb_method_entry_eq): added NULL check to avoid SEGV.
* test/ruby/test_refinement.rb: related test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (rb_id_attrset, intern_str): allow junk attrset ID for
Struct.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (rb_id_attrset): fix inconsistency with literals, allow
ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET.
and raise a NameError instead of rb_bug() for invalid argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
clear keyword arguments to prevent GC bug which occurs
while marking VM stack.
[ruby-dev:47729] [Bug #8964]
* test/ruby/test_keyword.rb: tests for the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* math.c (math_log, math_log2, math_log10): fix for Bignum argument.
numbits should be add only when right shifted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com).
* test/fiddle/helper.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/curses/curses.c (NUM2CH, CH2NUM): use proper macros for
the size of chtype.
[ruby-core:56090] [Bug #8659]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
RUBY_GC_MALLOC_LIMIT_MAX and RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR.
See r43067 for details.
* gc.c (rb_gc_set_params): refactoring. And change verbose notation.
Mostly duplicated functions get_envparam_int/double is not cool.
Please rewrite it.
* test/ruby/test_gc.rb: fix a test for this change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
If you enable RGENGC_PRINT_TICK to 1, then profiling results by RDTSC
(on x86/amd64 environment) are printed at last.
Thanks Yoshii-san.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Now, malloc_limit is increased/decreased by mysterious logic.
This fix simplify malloc_limit increase/decrease logic such as:
if (malloc_increase > malloc_limit) /* so many malloc */
malloc_limit += malloc_limit * (GC_MALLOC_LIMIT_FACTOR-1);
else
malloc_limit -= malloc_limit * (GC_MALLOC_LIMIT_FACTOR-1)/4;
Default value of GC_MALLOC_LIMIT_FACTOR is 1.8.
malloc_limit is bounded by GC_MALLOC_LIMIT_MAX (256MB by default).
This logic runs at before_sweeep(). So there are no effect from
caused by lazy sweep. And we can remove malloc_increase2.
* gc.c (HEAP_MIN_SLOTS, FREE_MIN, HEAP_GROWTH_FACTOR): rename to
GC_HEAP_MIN_SLOTS, GC_FREE_MIN, GC_HEAP_GROWTH_FACTOR respectively.
Check them by `#ifndef' so you can specify these values outside gc.c.
* gc.c (ruby_gc_params_t): add initial_malloc_limit_factor and
initial_malloc_limit_max.
* gc.c (vm_malloc_prepare, vm_xrealloc): use vm_malloc_increase to
add and check malloc_increase.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Patch by Prathamesh Sonpatki
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|