From:             friosa at pnpitalia dot it
Operating system: Linux 2.4.18-4GB
PHP version:      5.0.0b4 (beta4)
PHP Bug Type:     Zend Engine 2 problem
Bug description:  zend_variables.c problem

Description:
------------
I continue to get a core dump using imp with imap from the horde project.

The crash is reproducible but the gdb backtrace has changed after i've
inserted the debug code.



Also I think it's important to mention that if u substitute the
"var_dump()" code below with "print_r()" the crash disappear !!!

so we can switch this three cases:

case "code without debug": crash();

case "code with vardump($mime_part)": crash();

case "code with print_r($mime_part)": --> continue (but I can't still see
the page)



If I can help with something else please contact me, I' will keep a copy
of the code, also I can send U a tar.gz of all this stuff (may be not
usefull with my conf.)



follow:

PHP compiling flags

APACHE

PRINT_R

VARDUMP







*********************************************

* PHP compiling flags

*********************************************



CFLAGS = CPPFLAGS = -march=k6 -O0 -pipe -fomit-frame-pointer -I[...]



./configure \

--prefix=/TEST/php \

--with-apxs2=/TEST/apache/bin/apxs \

--with-config-file-path=/TEST/php/lib/php.ini \

--with-informix=/opt/informix \

--with-mysql=/pnp/mysql \

--with-mysql-sock=/tmp/mysql.sock \

--enable-libgcc \

--with-curl=/pnp \

--disable-ipv6 \

--enable-ftp \

--with-openssl=/pnp \

--with-gd \

--enable-gd-native-ttf \

--with-zlib-dir=/usr \

--with-jpeg-dir=/usr \

--enable-exif \

--with-tiff-lib=/usr \

--with-png-dir=/usr \

--with-freetype-dir=/usr \

--with-pdflib=/TEST \

--enable-bcmath \

--enable-shmop \

--enable-sysvmsg \

--enable-sysvsem \

--enable-sysvshm \

--enable-mime-magic \

--with-qtdom \

--enable-pcntl \

--enable-sockets \

--x-includes=/usr/X11/include/X11 \

--x-libraries=/usr/X11/lib \

--with-readline \

--with-gnu-ld \

--enable-static \

--with-gettext \

--with-libxml-dir=/TEST \

--with-xml=/TEST \

--with-dom=/TEST \

--with-xsl=/TEST \

--with-dom-xslt=/TEST \

--with-dom-exslt=/TEST \

--with-mcrypt=/pnp \

--with-imap \

--enable-debug \

&& make && make install







*********************************************

* APACHE

*********************************************







./httpd -V

Server version: Apache/2.1.0-dev

Server built:   Jan 26 2004 12:02:10

Server's Module Magic Number: 20030821:3

Architecture:   32-bit

Server MPM:     Prefork

  threaded:     no

    forked:     yes (variable process count)

Server compiled with....

 -D APR_HAS_SENDFILE

 -D APR_HAS_MMAP

 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)

 -D APR_USE_SYSVSEM_SERIALIZE

 -D APR_USE_PTHREAD_SERIALIZE

 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT

 -D APR_HAS_OTHER_CHILD

 -D AP_HAVE_RELIABLE_PIPED_LOGS

 -D HTTPD_ROOT="/TEST/apache"

 -D SUEXEC_BIN="/TEST/apache/bin/suexec"

 -D DEFAULT_PIDLOG="logs/httpd.pid"

 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"

 -D DEFAULT_LOCKFILE="logs/accept.lock"

 -D DEFAULT_ERRORLOG="logs/error_log"

 -D AP_TYPES_CONFIG_FILE="conf/mime.types"

 -D SERVER_CONFIG_FILE="conf/httpd.conf"





*********************************************

* PRINT_R

*********************************************



MIME_Message Object

(

    [_build] => 1

    [_defaultServer] => www2.pnp

    [_type] => text

    [_subtype] => Array

        (

            [download] => download_attach

            [view] => view_attach

        )



    [_contents] => 

    [_transferEncoding] => 7bit

    [_encode7bit] => 1

    [_description] => 

    [_disposition] => inline

    [_dispositionParameters] => Array

        (

        )



    [_contentTypeParameters] => 0

    

*********************************************

* VARDUMP

*********************************************



object(MIME_Message)#19 (19) {

  ["_build"]=>

  bool(true)

  ["_defaultServer"]=>

  string(8) "www2.pnp"

  ["_type"]=>

  string(4) "text"

  ["_subtype"]=>

  array(2) {

    ["download"]=>

    string(15) "download_attach"

    ["view"]=>

    string(11) "view_attach"

  }

  ["_contents"]=>

  string(0) ""

  ["_transferEncoding"]=>

  string(4) "7bit"

  ["_encode7bit"]=>

  bool(true)

  ["_description"]=>

  string(0) ""

  ["_disposition"]=>

  string(6) "inline"

  ["_dispositionParameters"]=>

  array(0) {

  }

  ["_contentTypeParameters"]=>

  &UNKNOWN:0

  ["_parts"]=>

  array(0) {

  }

  ["_information"]=>

  UNKNOWN:0

  ["_bytes"]=>

  object(MIME_Message)#19 (19) {

    ["_build"]=>

    bool(true)

    ["_defaultServer"]=>

    string(8) "www2.pnp"

    ["_type"]=>

    string(4) "text"

    ["_subtype"]=>

    array(2) {

      ["download"]=>

      string(15) "download_attach"

      ["view"]=>

      string(11) "view_attach"

    }

    ["_contents"]=>

    string(0) ""

    ["_transferEncoding"]=>

    string(4) "7bit"

    ["_encode7bit"]=>

    bool(true)

    ["_description"]=>

    string(0) ""

    ["_disposition"]=>

    string(6) "inline"

    ["_dispositionParameters"]=>

    array(0) {

    }

    ["_contentTypeParameters"]=>

    &UNKNOWN:0

    ["_parts"]=>

    array(0) {

    }

    ["_information"]=>

    UNKNOWN:0

    ["_bytes"]=>

    *RECURSION*

    ["_cids"]=>

    array(0) {

    }

    ["_mimeid"]=>

    UNKNOWN:0

    ["_eol"]=>

    string(1) "

"

    ["_flags"]=>

    UNKNOWN:0

    ["_idmap"]=>

    array(0) {

    }

  }

  ["_cids"]=>

  array(0) {

  }

  ["_mimeid"]=>

  UNKNOWN:0

  ["_eol"]=>

  string(1) "

"

  ["_flags"]=>

  UNKNOWN:0

  ["_idmap"]=>

  array(0) {

  }

}





Reproduce code:
---------------
class MIME_Contents {

[...]

    function buildMessagePart(&$mime_part)

    {

        $msg = '';

        if (!$this->canDisplayInline($mime_part) &&

            ($mime_part->getMIMEId() != 0)) {

            if (($this->_displayType == 'list') ||

                ($this->_displayType == 'both')) {

                $this->setSummary($mime_part, 'attachment');

            }

            if (($this->_displayType == 'inline') ||

                ($this->_displayType == 'both')) {

                $this->setSummary($mime_part, 'part');

            }

        } else {

// poor man debug code ...

echo "<pre>";

var_dump($mime_part);

echo "pippo".$i++; str_pad(" ", 300); ob_flush();flush();

echo "</pre>";



// ... poor man debug code

/////  CRASH HERE, FIRST LINE OF  "$this->renderMIMEPart($mime_part);" 
WILL NEVER EXECUTED

            $msg = $this->renderMIMEPart($mime_part);

            [...]



Actual result:
--------------
gdb ./httpd

GNU gdb 5.1.1

[...]

(gdb) run -X -f /TEST/apache/conf/httpd.conf

Starting program: /TEST/apache/bin/./httpd -X -f
/TEST/apache/conf/httpd.conf

[New Thread 1024 (LWP 30012)]



Program received signal SIGSEGV, Segmentation fault.

[Switching to Thread 1024 (LWP 30012)]

0x4066c571 in _zval_dtor (zvalue=0x4127d6a0, __zend_filename=0x406ed780
"/TEST/php-5.0.0b4/Zend/zend_execute_API.c", __zend_lineno=359)

    at /TEST/php-5.0.0b4/Zend/zend_variables.c:44

44                              CHECK_ZVAL_STRING_REL(zvalue);

(gdb) bt

#0  0x4066c571 in _zval_dtor (zvalue=0x4127d6a0,
__zend_filename=0x406ed780 "/TEST/php-5.0.0b4/Zend/zend_execute_API.c",
__zend_lineno=359)

    at /TEST/php-5.0.0b4/Zend/zend_variables.c:44

#1  0x412b11cc in ?? ()

#2  0x406972f7 in zend_do_fcall_common_helper (execute_data=0x40cf4b64,
opline=0x406f2a20, op_array=0x74) at
/TEST/php-5.0.0b4/Zend/zend_execute.c:2671

#3  0x406972f7 in zend_do_fcall_common_helper (execute_data=0x40cf4b64,
opline=0x406f2a20, op_array=0x74) at
/TEST/php-5.0.0b4/Zend/zend_execute.c:2671

#4  0x406972f7 in zend_do_fcall_common_helper (execute_data=0x40cf4b64,
opline=0x406f2a20, op_array=0x74) at
/TEST/php-5.0.0b4/Zend/zend_execute.c:2671

#5  0x406972f7 in zend_do_fcall_common_helper (execute_data=0x40cf4b64,
opline=0x406f2a20, op_array=0x74) at
/TEST/php-5.0.0b4/Zend/zend_execute.c:2671

#6  0x4066eaf7 in zend_execute_scripts (type=0, retval=0x0, file_count=4)
at /TEST/php-5.0.0b4/Zend/zend.c:1052

(gdb)



-- 
Edit bug report at http://bugs.php.net/?id=27469&edit=1
-- 
Try a CVS snapshot (php4):  http://bugs.php.net/fix.php?id=27469&r=trysnapshot4
Try a CVS snapshot (php5):  http://bugs.php.net/fix.php?id=27469&r=trysnapshot5
Fixed in CVS:               http://bugs.php.net/fix.php?id=27469&r=fixedcvs
Fixed in release:           http://bugs.php.net/fix.php?id=27469&r=alreadyfixed
Need backtrace:             http://bugs.php.net/fix.php?id=27469&r=needtrace
Need Reproduce Script:      http://bugs.php.net/fix.php?id=27469&r=needscript
Try newer version:          http://bugs.php.net/fix.php?id=27469&r=oldversion
Not developer issue:        http://bugs.php.net/fix.php?id=27469&r=support
Expected behavior:          http://bugs.php.net/fix.php?id=27469&r=notwrong
Not enough info:            http://bugs.php.net/fix.php?id=27469&r=notenoughinfo
Submitted twice:            http://bugs.php.net/fix.php?id=27469&r=submittedtwice
register_globals:           http://bugs.php.net/fix.php?id=27469&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=27469&r=php3
Daylight Savings:           http://bugs.php.net/fix.php?id=27469&r=dst
IIS Stability:              http://bugs.php.net/fix.php?id=27469&r=isapi
Install GNU Sed:            http://bugs.php.net/fix.php?id=27469&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=27469&r=float

Reply via email to