[PHP-users 6755] PHP4.2.0RC2 のバグ?(mb_output_handlerとxslt_process)

SHIMOOKA Hideyuki php-users@php.gr.jp
Tue, 9 Apr 2002 10:36:33 +0900


下岡です。

最近リリースされたPHP4.2.0.RC2をインストールして使ってみましたが、
バグかな?と思われるところがありましたので、ご報告します。

#ちょっと長いです。。。

ソースの方ですが、XMLをXSLでshift_jisのhtmlに変換するだけの単純な
ものです。

何かお分かりの方、いらっしゃいますでしょうか?

----ここから

●現象
 php.iniでoutput_handler=mb_output_handlerを指定し、PHPスク
 リプトでmb_http_output("pass")、xslt_process()を実行すると、
 ApacheのプロセスがSegmentation faultになる

 ※「output_handler=」やoutput_handler自体記述しない場合は
  正常に動作します
 ※XML、XSLともutf-8に変更してもNGでした

●環境
 ・Vine Linux2.1.5
 ・Apache1.3.20
 ・PHP4.2.0RC1、RC2
  →いずれでも発生しました。PHP4.1.2では正常に動作します
 ・Sablotron0.70 + expat1.95.2

●ソース
 http://www.pat.hi-ho.ne.jp/dimension/xslttest.zip

●Apacheのログ
[Tue Apr  9 00:26:49 2002] [notice] child pid 2576 exit signal Segmentation fault (11)

●php.ini
 php.ini-recommendedをベースに、以下の項目を指定。

  allow_call_time_pass_reference = On

  output_handler = mb_output_handler

  mbstring.internal_encoding = EUC-JP
  mbstring.http_input = auto
  mbstring.http_output = SJIS
  mbstring.detect_order = auto
  mbstring.substitute_character = none;

●Apacheのconfigureオプション
./configure \
--enable-shared=max \
--enable-module=so \
--enable-shared=rewrite \
--enable-module=rewrite \
--disable-rule=EXPAT

●PHPのconfigureオプション
./configure \
--with-oracle=/u01/app/oracle/product/8.1.7 \
--with-oci8=/u01/app/oracle/product/8.1.7 \
--enable-versioning \
--enable-sigchild \
--enable-track-vars \
--enable-trans-sid \
--without-mysql \
--enable-xslt \
--enable-mbstring \
--enable-mbstr-enc-trans \
--with-dom \
--with-zlib-dir \
--with-xslt-sablot \
--with-expat-dir=/usr/local \
--with-zlib \
--with-gd \
--with-ttf \
--with-freetype-dir=/usr/local \
--with-jpeg-dir \
--with-png-dir \
--with-xpm-dir \
--with-apxs=/usr/local/apache/bin/apxs \
--with-xmlrpc

----ここまで

-- 
H.Shimooka/shimooka@axissoft.co.jp