summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-12-14 16:37:56 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-12-14 16:37:56 +0000
commit08df1164c3c66633e1e1e0b606bbf79fb496b79b (patch)
treedec5f93058a0fbdf8e515d8a7fe293bb1bf6f442
parent6c43156dff9ab5f1ea8165ccdef4b1e88a1d24cd (diff)
downloadruby-08df1164c3c66633e1e1e0b606bbf79fb496b79b.tar.gz
ruby-08df1164c3c66633e1e1e0b606bbf79fb496b79b.tar.xz
ruby-08df1164c3c66633e1e1e0b606bbf79fb496b79b.zip
* ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4) git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@9691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--ext/zlib/zlib.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index ea2a7b53d..16199aa46 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Dec 15 01:33:31 2005 Tanaka Akira <akr@m17n.org>
+
+ * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
+ x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
+
Wed Dec 14 23:50:20 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c
index b05e5264c..923e3a72b 100644
--- a/ext/zlib/zlib.c
+++ b/ext/zlib/zlib.c
@@ -762,6 +762,7 @@ zstream_run(z, src, len, flush)
zstream_reset_input(z);
if (z->stream.avail_in > 0) {
zstream_append_input(z, z->stream.next_in, z->stream.avail_in);
+ guard = Qnil; /* prevent tail call to make guard effective */
}
}