From: "U.Nakamura" Date: 2005-01-28T11:24:04+09:00 Subject: [ruby-dev:25577] Re: xmalloc and free (with win32 mod_ruby) こんにちは、なかむら(う)です。 In message "[ruby-dev:25570] xmalloc and free (with win32 mod_ruby)" on Jan.28,2005 01:45:41, wrote: | 現在分かっている範囲でエラーが起きるのはdigestライブラリとstrscanライブラリです。 | この2つで落ちる原因はxmalloc(またはxcalloc)で確保したメモリをfreeで解放している | ためと判りました。これらのfreeをxfreeすれば、その部分では落ちなくなりました。 まあ、xmallocしたらxfreeしろよ、というのは正しい主張だと思う んですが、少なくともWindows版に限っては、rubyや拡張ライブラリ やrubyを組み込むアプリケーション(この場合はmod_ruby)を正しく 作っていれば、freeだから落ちる/xfreeだから落ちない、というこ とは起きないようになっているはずです。 ときわさんがメールに書かれておられる情報からだけでは、問題を 再現させてコードを追うことができないので、問題のmod_rubyのバ イナリをどうやって作ったか、を教えていただきたいです。 というのはまあ一般論なんですが、実際に http://tokiwa.hn.org/puki/?mod_ruby_win32bin を見て、モノを落としてきて眺めてみた感じでは、単にmod_rubyが 正しく作られていない(MSVCRT.dllにリンクされていない)のが原因 かと思います。 手順が公開されてないので、なんでそうなったか、とかいう話には コメントできないんですが、そこを解決すれば、このfreeの問題は 解消されると思います。 それでは。 -- U.Nakamura