summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-10-08 10:37:23 +0000
committerkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-10-08 10:37:23 +0000
commit8eecb0a9f9a19bd3327a054c743dff2b825dc97a (patch)
treed79c21cac56bd5866a20a797fa8317ebc4a3f533
parent0accf1fbeced2530d2428b750a3c37e797c1745a (diff)
merge revision(s) 33379:
* gc.c (rb_gc_set_params): output GC parameter change messages only if -w/-v options are specified. these messages are output to stderr, not to stdout. [ruby-core:39795] [Bug #5380] * test/ruby/test_gc.rb (test_gc_parameter): add test for it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@33433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--gc.c11
-rw-r--r--test/ruby/test_gc.rb8
3 files changed, 23 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 8adf256adb..c187fe7cfa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Sat Oct 8 06:37:08 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com>
+
+ * gc.c (rb_gc_set_params): output GC parameter change messages only
+ if -w/-v options are specified. these messages are output to stderr,
+ not to stdout. [ruby-core:39795] [Bug #5380]
+
+ * test/ruby/test_gc.rb (test_gc_parameter): add test for it.
+
Sat Oct 8 06:26:24 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com>
* gc.c (add_heap_slots, init_heap): reset heaps_inc zero when
diff --git a/gc.c b/gc.c
index 844e104ecc..d1c0791a0c 100644
--- a/gc.c
+++ b/gc.c
@@ -416,7 +416,9 @@ rb_gc_set_params(void)
malloc_limit_ptr = getenv("RUBY_GC_MALLOC_LIMIT");
if (malloc_limit_ptr != NULL) {
int malloc_limit_i = atoi(malloc_limit_ptr);
- printf("malloc_limit=%d (%d)\n", malloc_limit_i, initial_malloc_limit);
+ if (ruby_verbose)
+ fprintf(stderr, "malloc_limit=%d (%d)\n",
+ malloc_limit_i, initial_malloc_limit);
if (malloc_limit_i > 0) {
initial_malloc_limit = malloc_limit_i;
}
@@ -425,7 +427,9 @@ rb_gc_set_params(void)
heap_min_slots_ptr = getenv("RUBY_HEAP_MIN_SLOTS");
if (heap_min_slots_ptr != NULL) {
int heap_min_slots_i = atoi(heap_min_slots_ptr);
- printf("heap_min_slots=%d (%d)\n", heap_min_slots_i, initial_heap_min_slots);
+ if (ruby_verbose)
+ fprintf(stderr, "heap_min_slots=%d (%d)\n",
+ heap_min_slots_i, initial_heap_min_slots);
if (heap_min_slots_i > 0) {
initial_heap_min_slots = heap_min_slots_i;
initial_expand_heap(&rb_objspace);
@@ -435,7 +439,8 @@ rb_gc_set_params(void)
free_min_ptr = getenv("RUBY_FREE_MIN");
if (free_min_ptr != NULL) {
int free_min_i = atoi(free_min_ptr);
- printf("free_min=%d (%d)\n", free_min_i, initial_free_min);
+ if (ruby_verbose)
+ fprintf(stderr, "free_min=%d (%d)\n", free_min_i, initial_free_min);
if (free_min_i > 0) {
initial_free_min = free_min_i;
}
diff --git a/test/ruby/test_gc.rb b/test/ruby/test_gc.rb
index b294c5445e..736f9349d3 100644
--- a/test/ruby/test_gc.rb
+++ b/test/ruby/test_gc.rb
@@ -86,6 +86,12 @@ class TestGc < Test::Unit::TestCase
"RUBY_GC_MALLOC_LIMIT" => "60000000",
"RUBY_HEAP_MIN_SLOTS" => "100000"
}
- assert_normal_exit("1", "[ruby-core:39777]", :child_env => env)
+ assert_normal_exit("exit", "[ruby-core:39777]", :child_env => env)
+
+ env = {
+ "RUBY_HEAP_MIN_SLOTS" => "100000"
+ }
+ assert_in_out_err([env, "-e", "exit"], "", [], [], "[ruby-core:39795]")
+ assert_in_out_err([env, "-w", "-e", "exit"], "", [], /heap_min_slots=100000/, "[ruby-core:39795]")
end
end