Bug #38975 [Com]: date() function causes php crash

From: Date: Sat, 16 Oct 2010 17:22:24 +0000
Subject: Bug #38975 [Com]: date() function causes php crash
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-155251@lists.php.net to get a copy of this message
Edit report at http://bugs.php.net/bug.php?id=38975&edit=1

 ID:                 38975
 Comment by:         zeyar dot oo dot p at gmail dot com
 Reported by:        rachmel at avaya dot com
 Summary:            date() function causes php crash
 Status:             Wont fix
 Type:               Bug
 Package:            Reproducible crash
 Operating System:   WindRiver Linux
 PHP Version:        5.1.6
 Block user comment: N

 New Comment:

My whole site was crashed after updating PHP and CSS scripts. And server
replies by saying "Zero Sized Reply". Please let me know how to debug
this problem. Can third party javascripts bring your script to a crash?


Previous Comments:
------------------------------------------------------------------------
[2007-04-16 06:10:19] derick@php.net

Right, but that would possibly break it for others of course...

------------------------------------------------------------------------
[2007-04-15 06:44:41] rachmel at avaya dot com

Hi,

Well, changing the above lines in the configure script to:

if test "$cross_compiling" = yes; then
  ac_cv_c_bigendian_php=yes

fixed the bug for us. 

Thanks,

Nir.

------------------------------------------------------------------------
[2007-04-13 14:31:10] derick@php.net

We don't support cross compilation. Feel free to come up with a patch
yourself though.

------------------------------------------------------------------------
[2006-10-25 10:41:03] rachmel at avaya dot com

Hi,

I think I found the problem. in one of the date extention files:
parse_tz.c , there is a conversion macro called: timelib_conv_int() that
has two modes - depends if WORDS_BIGENDIAN is defined or not.
I located the test that defines it in the php configure file, and it
looks like this:

  echo $ac_n "checking whether byte ordering is bigendian""... $ac_c"
1>&6
echo "configure:43563: checking whether byte ordering is bigendian" >&5
if eval "test \"echo
'$''{'ac_cv_c_bigendian_php'+set}'\" = set";
then
  echo $ac_n "(cached) $ac_c" 1>&6
else

  ac_cv_c_bigendian_php=unknown
  if test "$cross_compiling" = yes; then
  ac_cv_c_bigendian_php=unknown
else
  cat > conftest.$ac_ext <<EOF

So, what happens is - i cross compile, and then the bigendian becomes
uknown => the WORDS_BIGENDIAN is not defined => the timezone database is
read in the wrong way => malloc tries to use that information to
allocate memory and fails.

Can you explain why it is that way?

------------------------------------------------------------------------
[2006-10-18 17:04:44] tony2001@php.net

No, I don't think it matters.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    http://bugs.php.net/bug.php?id=38975


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=38975&edit=1


Thread (22 messages)

« previous php.bugs (#155251) next »