ID:               35751
 Updated by:       [EMAIL PROTECTED]
 Reported By:      lehmann at ans-netz dot de
-Status:           Open
+Status:           Feedback
 Bug Type:         Date/time related
 Operating System: FreeBSD 6.0/alpha
 PHP Version:      5.1.1
 New Comment:

Please try using this CVS snapshot:

  http://snaps.php.net/php5.1-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5.1-win32-latest.zip




Previous Comments:
------------------------------------------------------------------------

[2005-12-20 20:53:59] lehmann at ans-netz dot de

here is the backtrace:

(gdb) bt
#0  0x00000001200297c8 in php_format_date (format=0x120132fd8 "\036",
format_len=540212224, ts=10000, localtime=46)
    at
/usr/obj/alpha-ev56-6.0/usr/ports/lang/php5/work/php-5.1.1/ext/date/php_date.c:467
#1  0x0000000000000000 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb) up 0
#0  0x00000001200297c8 in php_format_date (format=0x120132fd8 "\036",
format_len=540212224, ts=10000, localtime=46)
    at
/usr/obj/alpha-ev56-6.0/usr/ports/lang/php5/work/php-5.1.1/ext/date/php_date.c:467
467                     switch (format[i]) {
(gdb) list
462             }
463             buffer[32] = '\0';
464             timelib_isoweek_from_date(t->y, t->m, t->d, &isoweek,
&isoyear);
465     
466             for (i = 0; i < format_len; i++) {
467                     switch (format[i]) {
468                             /* day */
469                             case 'd': snprintf(buffer, 32, "%02d",
(int) t->d); break;
470                             case 'D': snprintf(buffer, 32, "%s",
day_short_names[timelib_day_of_week(t->y, t->m, t->d)]); break;
471                             case 'j': snprintf(buffer, 32, "%d",
(int) t->d); break;
(gdb)

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

[2005-12-20 20:33:57] [EMAIL PROTECTED]

Instead of running it through your webserver, try the command line...
(with GDB too).

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

[2005-12-20 20:25:19] lehmann at ans-netz dot de

I'm not able to get a working backtrace, i compiled php with
--enable-debug during configure:

[EMAIL PROTECTED] php-5.1.1> gdb /usr/local/sbin/httpd /tmp/httpd.core 
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "alpha-marcel-freebsd"...(no debugging
symbols found)...
Core was generated by `httpd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libz.so.3...(no debugging symbols
found)...done.
Loaded symbols for /lib/libz.so.3
Reading symbols from /usr/lib/libssl.so.4...(no debugging symbols
found)...done.
Loaded symbols for /usr/lib/libssl.so.4
[...]
Loaded symbols for /usr/local/libexec/apache2/libphp5.so
Reading symbols from /usr/local/lib/libxml2.so.5...done.
Loaded symbols for /usr/local/lib/libxml2.so.5
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0  0x0000000160953668 in ?? () from
/usr/local/libexec/apache2/libphp5.so
(gdb) bt
#0  0x0000000160953668 in ?? () from
/usr/local/libexec/apache2/libphp5.so
#1  0x0000000000000002 in ?? ()
Cannot access memory at address 0xfffffffffffffffe
(gdb)

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

[2005-12-20 19:11:13] lehmann at ans-netz dot de

Description:
------------
Using date() in combination with a timestamp makes my httpd segfault on
FreeBSD 5.0/alpha - it worked with PHP 5.0.5 like a charm.
Using just date() with a format string, but w/o a timestamp works w/o
problems.

Reproduce code:
---------------
<?echo date('Y',10000)?>

Expected result:
----------------
it should work?

Actual result:
--------------
[EMAIL PROTECTED] php5> ktrace httpd -X
pid 30132 (httpd): unaligned access: va=0x11ffc72c pc=0x160a59720
ra=0x160a59e44 op=stq
Segmentation fault
Exit 139
[EMAIL PROTECTED] php5> 

last part of the ktrace:

 27732 httpd    RET   read 487/0x1e7
 27732 httpd    CALL  stat(0x1605da495,0x11ffe658)
 27732 httpd    NAMI  "/etc/nsswitch.conf"
 27732 httpd    RET   stat 0
 27732 httpd    CALL  stat(0x1605da495,0x11ffe658)
 27732 httpd    Events dropped.
 27732 httpd    RET   stat 0
 27732 httpd    Events dropped.
 27732 httpd    CALL  open(0x1202e43c0,0,0x1b6)
 27732 httpd    Events dropped.
 27732 httpd    RET   lstat 0
 27732 httpd    Events dropped.
 27732 httpd    RET   open 23/0x17
 27732 httpd    Events dropped.
 27732 httpd    RET   open 23/0x17
 27732 httpd    Events dropped.
 27732 httpd    RET   stat 0
 27732 httpd    Events dropped.
 27732 httpd    RET   lstat 0
 27732 httpd    Events dropped.
 27732 httpd    RET   lstat 0
 27732 httpd    Events dropped.
 27732 httpd    RET   lstat 0
 27732 httpd    Events dropped.
 27732 httpd    RET   lstat 0
 27732 httpd    Events dropped.
 27732 httpd    CALL  gettimeofday(0x11ffc548,0)
[EMAIL PROTECTED] php5>


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


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

Reply via email to