summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-12-20 04:13:26 +0000
committerocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-12-20 04:13:26 +0000
commitbbcd49c836f34b2e0f0d2ce85709c28daa0bc560 (patch)
tree0659845fb9f727b8322fc13672b4a33db5aa8983 /ChangeLog
parent208a80fb4e23f09c96cae0e86ecf0b6ca215ebe8 (diff)
downloadruby-bbcd49c836f34b2e0f0d2ce85709c28daa0bc560.tar.gz
ruby-bbcd49c836f34b2e0f0d2ce85709c28daa0bc560.tar.xz
ruby-bbcd49c836f34b2e0f0d2ce85709c28daa0bc560.zip
* ext/syck/rubyext.c: fixed GC problem (backported HEAD 1.55 - 1.62)
[ruby-dev:27839] * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is NULL or not before S_FREE. * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert in gram.c to insert node from rb_syck_bad_anchor_handler into SyckParser's hash table. if GC occurs in st_insert, it's not under SyckParser's mark system yet. so RString can be released wrongly. [ruby-dev:28057] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@9722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8bb6f1900..8d8be846f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+Tue Dec 20 13:11:59 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
+
+ * ext/syck/rubyext.c: fixed GC problem (backported HEAD 1.55 - 1.62)
+ [ruby-dev:27839]
+
+ * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
+ NULL or not before S_FREE.
+
+ * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
+ in gram.c to insert node from rb_syck_bad_anchor_handler into
+ SyckParser's hash table. if GC occurs in st_insert, it's not under
+ SyckParser's mark system yet. so RString can be released wrongly.
+ [ruby-dev:28057]
+
Tue Dec 20 12:53:23 2005 why the lucky stiff <why@ruby-lang.org>
* ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility