# serialize segfault

- Thread: https://externals.io/message/2138
- Original archive: https://news-web.php.net/php.internals/2138
- Started by Chris on 2003-06-04T00:43:14+00:00
- Messages: 2
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #2139 — Sascha Schumann — 2003-06-04T00:42:43+00:00

URL: https://externals.io/message/2138#2139 · In reply to: #2138

> Can anyone give me a hand with tracking down the problem?

    Did you try a more stable compiler already?

    - Sascha

---

## #2138 — Chris — 2003-06-04T00:43:14+00:00

URL: https://externals.io/message/2138#2138

Hi all,

I'm trying to track down a segfault to do with serializing an object.

I can't reproduce it with a small script so I'm not sure where to go from 
here. Any suggestions, tips, helpful hints greatly appreciated.

It's part of a largish CMS which uses lots of circular references so 
pasting an example isn't easy.

Here's a backtrace:

(gdb) bt
#0  0x4023d67e in php_var_serialize_class_name (buf=0xbffddf20, 
struc=0x8bd961c)
     at /usr/src/php-4.3.2/ext/standard/var.c:416
#1  0x4023c899 in php_var_serialize_class (buf=0xbffddf20, struc=0x8bd961c, 
retval_ptr=0x8b43dec, var_hash=0xbffddf30)
     at /usr/src/php-4.3.2/ext/standard/var.c:430
#2  0x4023cdf5 in php_var_serialize_intern (buf=0xbffddf20, 
struc=0x8bd961c, var_hash=0xbffddf30)
     at /usr/src/php-4.3.2/ext/standard/var.c:549
#3  0x4023d05b in php_var_serialize (buf=0xbffddf20, struc=0x8bd961c, 
var_hash=0xbffddf30)
     at /usr/src/php-4.3.2/ext/standard/var.c:623
#4  0x4023d108 in zif_serialize (ht=1, return_value=0x88340d4, 
this_ptr=0x0, return_value_used=1)
     at /usr/src/php-4.3.2/ext/standard/var.c:646
#5  0x402c8947 in execute (op_array=0x8cb5da4) at 
/usr/src/php-4.3.2/Zend/zend_execute.c:1606

(gdb) frame 5
#5  0x402c8947 in execute (op_array=0x8cb5da4) at 
/usr/src/php-4.3.2/Zend/zend_execute.c:1606
1606 
((zend_internal_function *) 
EX(function_state).function)->handler(EX(opline)->extended_value, 
EX(Ts)[EX(opline)->result.u.var].var.ptr, EX(object).ptr, return_value_used 
TSRMLS_CC);

(gdb) print (char 
*)(executor_globals.function_state_ptr->function)->common.function_name
$1 = 0x4030831b "serialize"

$ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-113)


Can anyone give me a hand with tracking down the problem?

Thanks!
Chris.
