<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/gc.c, branch v1_8_7_101</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) 19078,20097:</title>
<updated>2009-01-22T06:22:00+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2009-01-22T06:22:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=8837f5948551444299fe5a13d06fa210dce01c65'/>
<id>8837f5948551444299fe5a13d06fa210dce01c65</id>
<content type='text'>
	* gc.c (rb_mark_set): new function to mark keys.
	* marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
	  data entries.  backport from trunk r13527,r13528,r13961,r16533.
	  [ruby-dev:36082]
	* marshal.c (marshal_load): arg.data is no longer a VALUE but a
	  st_table, and freed in load_ensure.  pointed out by pegacorn.
	  [ruby-dev:37008]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* gc.c (rb_mark_set): new function to mark keys.
	* marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
	  data entries.  backport from trunk r13527,r13528,r13961,r16533.
	  [ruby-dev:36082]
	* marshal.c (marshal_load): arg.data is no longer a VALUE but a
	  st_table, and freed in load_ensure.  pointed out by pegacorn.
	  [ruby-dev:37008]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 18463:</title>
<updated>2009-01-15T05:40:26+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2009-01-15T05:40:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3c848f79b7eb5ad26b57c4d9edde577cc1ba7026'/>
<id>3c848f79b7eb5ad26b57c4d9edde577cc1ba7026</id>
<content type='text'>
	* gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
	  [ruby-core:18207]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
	  [ruby-core:18207]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 18392:</title>
<updated>2009-01-11T15:24:53+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2009-01-11T15:24:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f3a4870b42fcbaefd051b3754738a869b87098e2'/>
<id>f3a4870b42fcbaefd051b3754738a869b87098e2</id>
<content type='text'>
	* gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
	  Data.  [ruby-dev:35578]
	* gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
	  cannot be invoked.  [ruby-dev:35681]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
	  Data.  [ruby-dev:35578]
	* gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
	  cannot be invoked.  [ruby-dev:35681]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 18316,18319:</title>
<updated>2009-01-05T02:16:18+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2009-01-05T02:16:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7e575886770ff014948176608d3507634a68ffb6'/>
<id>7e575886770ff014948176608d3507634a68ffb6</id>
<content type='text'>
	* rubysig.h (CHECK_INTS): gives the chance to perform to deferred
	  finalizers before explicit GC.start or the process termination.
	  [ruby-core:18045]
	* eval.c (rb_thread_schedule): runs deferred finalizers.
	* gc.c (gc_sweep): sets rb_thread_pending to run deferred finalizers.
	* rubysig.h (CHECK_INTS): now checks rb_thread_pending even on
	  platforms where setitimer is not available.  [ruby-core:18045]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* rubysig.h (CHECK_INTS): gives the chance to perform to deferred
	  finalizers before explicit GC.start or the process termination.
	  [ruby-core:18045]
	* eval.c (rb_thread_schedule): runs deferred finalizers.
	* gc.c (gc_sweep): sets rb_thread_pending to run deferred finalizers.
	* rubysig.h (CHECK_INTS): now checks rb_thread_pending even on
	  platforms where setitimer is not available.  [ruby-core:18045]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 17833:17837:</title>
<updated>2008-08-04T03:24:26+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-08-04T03:24:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d1911459aed44a294cd8d2ef8e5c723c656f63ca'/>
<id>d1911459aed44a294cd8d2ef8e5c723c656f63ca</id>
<content type='text'>
	* gc.c (Init_GC): fix syntax error.
	* error.c (rb_exc_new3): keeps the given string itself.
	* eval.c (Init_Proc), gc.c (Init_GC): freeze messages of preallocated
	  special exceptions also.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@18327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* gc.c (Init_GC): fix syntax error.
	* error.c (rb_exc_new3): keeps the given string itself.
	* eval.c (Init_Proc), gc.c (Init_GC): freeze messages of preallocated
	  special exceptions also.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@18327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 17832:</title>
<updated>2008-07-07T06:17:24+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-07-07T06:17:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c14831d7f19ffd6c2d35b9ed0fe1a4d6c4db3c2d'/>
<id>c14831d7f19ffd6c2d35b9ed0fe1a4d6c4db3c2d</id>
<content type='text'>
	* eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
	  if it was frozen.  clear all raised flags.
	* eval.c (stack_check): leave clearing flag to rb_longjmp.
	* eval.c (rb_thread_set_raised, rb_thread_reset_raised): use generic
	  flags.
	* eval.c (Init_Proc), gc.c (Init_GC): freeze preallocated special exceptions.
	* gc.c (rb_memerror): use thread raised flag instead of static flag,
	  and raise nomem_error without backtrace if failed to make backtrace.
	  [ruby-dev:34724]
	* gc.c (ruby_xmalloc): increase malloc_increase only if malloc
	  succeeds.  failed malloc size can be huge.  it may increase
	  malloc_limit too big which cause less GC and memory full.
	  (ruby_xrealloc): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
	  if it was frozen.  clear all raised flags.
	* eval.c (stack_check): leave clearing flag to rb_longjmp.
	* eval.c (rb_thread_set_raised, rb_thread_reset_raised): use generic
	  flags.
	* eval.c (Init_Proc), gc.c (Init_GC): freeze preallocated special exceptions.
	* gc.c (rb_memerror): use thread raised flag instead of static flag,
	  and raise nomem_error without backtrace if failed to make backtrace.
	  [ruby-dev:34724]
	* gc.c (ruby_xmalloc): increase malloc_increase only if malloc
	  succeeds.  failed malloc size can be huge.  it may increase
	  malloc_limit too big which cause less GC and memory full.
	  (ruby_xrealloc): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 17827,17846:17848:</title>
<updated>2008-07-07T03:29:28+00:00</updated>
<author>
<name>shyouhei</name>
<email>shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-07-07T03:29:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=719f4c42a92f0bdc6b29c9c754f4882e49d9e5af'/>
<id>719f4c42a92f0bdc6b29c9c754f4882e49d9e5af</id>
<content type='text'>
	* gc.c: add rb_during_gc(). based on a patch from arton &lt;artonx AT
	  yahoo.co.jp&gt; at [ruby-dev:35313].   
	* intern.h: ditto.
	* ext/win32ole/win32ole.c: avoid creating Ruby object during
	  GC. thanks to arton &lt;artonx AT yahoo.co.jp&gt;. [ruby-dev:35313]
	* ext/win32ole/tests: add test_win32ole_event.rb, remove
	  testOLEEVENT.rb
	* ext/win32ole/tests/testWIN32OLE.rb(test_convert_bignum):
	  fix test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* gc.c: add rb_during_gc(). based on a patch from arton &lt;artonx AT
	  yahoo.co.jp&gt; at [ruby-dev:35313].   
	* intern.h: ditto.
	* ext/win32ole/win32ole.c: avoid creating Ruby object during
	  GC. thanks to arton &lt;artonx AT yahoo.co.jp&gt;. [ruby-dev:35313]
	* ext/win32ole/tests: add test_win32ole_event.rb, remove
	  testOLEEVENT.rb
	* ext/win32ole/tests/testWIN32OLE.rb(test_convert_bignum):
	  fix test.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* gc.c (os_obj_of): assure to not free the scanning heap.</title>
<updated>2008-06-08T18:21:56+00:00</updated>
<author>
<name>knu</name>
<email>knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-06-08T18:21:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5a797c1c770365c40c4680c13bf0dd6d15bdc989'/>
<id>5a797c1c770365c40c4680c13bf0dd6d15bdc989</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@17029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge from ruby_1_8.</title>
<updated>2008-05-21T17:27:56+00:00</updated>
<author>
<name>knu</name>
<email>knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-05-21T17:27:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b524523217b51e864c010646ffd5cbc4154d2fd3'/>
<id>b524523217b51e864c010646ffd5cbc4154d2fd3</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@16511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@16511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* signal.c, gc.c: New methods: GC.stress, GC.stress=;</title>
<updated>2008-04-15T07:54:11+00:00</updated>
<author>
<name>kazu</name>
<email>kazu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2008-04-15T07:54:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b54786ffbce89d8bd3320eeed0eb385c647c744d'/>
<id>b54786ffbce89d8bd3320eeed0eb385c647c744d</id>
<content type='text'>
  backported from 1.9. a patch from Tadashi Saito
  in [ruby-dev:34394] and bug#19000


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  backported from 1.9. a patch from Tadashi Saito
  in [ruby-dev:34394] and bug#19000


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
</feed>
