[ruby-dev:46150] [ruby-trunk - Bug #7040] gem install で特定の gem がインストールできない

From: "nagachika (Tomoyuki Chikanaga)" <nagachika00@...>
Date: 2012-09-20 02:57:40 UTC
List: ruby-dev #46150
Issue #7040 has been updated by nagachika (Tomoyuki Chikanaga).

Assignee set to drbrain (Eric Hodel)

Hello,

I'd like to switch to ruby-core, but I don't know how to do it on redmine...

Anyway, I've found that zstream_run_func() leaks Z_BUF_ERROR because deflate() could return Z_BUF_ERROR even when z->stream.avail_out > 0.
My tiny patch below prevent the exception, but I'm not confident at all it's right way to fix this issue.

diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c
index 6135e82..bcf289f 100644
--- a/ext/zlib/zlib.c
+++ b/ext/zlib/zlib.c
@@ -987,6 +987,7 @@ zstream_run_func(void *ptr)
 
        if (z->stream.avail_out > 0) {
            z->flags |= ZSTREAM_FLAG_IN_STREAM;
+           err = Z_OK;
            break;
        }
 

I think Eric (a.k.a drbrain) should have any idea, so him.

thakns,
----------------------------------------
Bug #7040: gem install で特定の gem がインストールできない
https://bugs.ruby-lang.org/issues/7040#change-29567

Author: hsbt (Hiroshi SHIBATA)
Status: Open
Priority: Normal
Assignee: drbrain (Eric Hodel)
Category: core
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-09-20 trunk 36993) [x86_64-darwin12.2.0]


trunk で特定の gem(例えば libv8等)をインストールしようとすると必ず失敗してしまいます。

 % gem i libv8
 ERROR:  While executing gem ... (Zlib::BufError)
     buffer error

Twitter 上で nagachika さんから Zlib の GVL 対応?が原因ではないかとコメントを頂きましたが、上記のエラー表示以降は調査しきれていません。



-- 
http://bugs.ruby-lang.org/

In This Thread