[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]
[webdav-jp:0990] Re: mod_encoding 付き httpd の肥大化
吉山です。
On Wed, 28 Apr 2004 09:46:09 +0900
Kenji Wakamiya <wkenji@xxxxxxxxxxxxxx> wrote:
> 若宮です。
> 情報ありがとうございます(_ _)>吉山さん
>
> > iconv_hook のモジュールで必要なメモリ開放をしていないような気がする箇所
> > が2つありました。
>
> なるほど…、iconv_hook の可能性を忘れていました。
>
> > + if (cd->ienc == NULL) free (id->oenc);
> ^^^^^^^^cd->ienc ですね(^^;
>
> 頂いたパッチを試してみたのですが、まだ漏れているようで httpd の肥大化は
> 再現してしまいました (心なしか肥大化ペースは遅くなった気がします)。
んー…
じゃー、これでどうでしょう。
===
diff -u iconv_hook.c iconv_hook.c.fix
--- iconv_hook.c 2002-06-08 18:19:01.000000000 +0900
+++ iconv_hook.c.fix 2004-04-28 10:50:27.000000000 +0900
@@ -33,6 +33,7 @@
int
iconv_hook_close(iconv_t cd) {
+ (*(p->cm->iconv_close))(ienc, oenc);
free((iconv_hook_t *)cd);
return 0;
}
===
> > iconv_hook なしでコンパイルする(glibc の iconv() を利用する)ようにして
> > みて問題が解決するならビンゴかも知れません。
>
> iconv_hook/iconv.h の include を iconv.h に変えて make してみたらビンゴ!
> でした。httpd は起動時のサイズ+α からほぼ変化せずに動いています。
>
> しかし、当然ながら iconv_hook で吸収していた iconv の非互換問題が出て、
> Web フォルダでのアクセス時に WebDAV 本の例のような文字化けが生じます;-)。
最近の glibc だと、EUC-JP-MSや MS932 をサポートしている筈ですよ。
Fedora 辺りにはありませんかね?
iconv --list
で一覧に出るなら試してみて下さい。
---
吉山あきら<yosshy@xxxxxxxxxxxx>