[PHP-BUG] Bug #65367 [NEW]: Segmentation fault when returning onjects by reference

2013-07-31 Thread mbecc...@php.net
From: mbeccati
Operating system: Any
PHP version:  5.5.1
Package:  Reproducible crash
Bug Type: Bug
Bug description:Segmentation fault when returning onjects by reference

Description:

While updating an old open source application to work with PHP 5.4 and 5.5,
I somehow managed to trigger a segmentation fault when removing an =
assignment. I've been able to write a small reproduce script, which however
still requires MDB2 from PEAR (tested only with the pgsql driver).

Changing back a specific assignment to = prevents the shutdown segfault
from happening.

The code works fine with 5.3 and crashes on 5.4+. Tested on Windows and
Linux.

Test script:
---
?php

require './usr/share/php/MDB2.php';

class A {
static function singleton()
{
$db =
MDB2::connect('pgsql://postgres:password@localhost/postgres');
$db-loadModule('Datatype');

$GLOBALS['DB'] = $db; // Using = $db doesn't crash

return $GLOBALS['DB'];
}
}

class B {
function __construct()
{
$this-db = $this-getDb();
}

function getDB()
{
return A::singleton();
}
}

$b = new B();


Expected result:

PHP Notice:  Only variable references should be returned by reference in
foobar.php on line 25


Actual result:
--
#0  0x00812979 in gc_zval_possible_root (zv=0x7fffeef256e0) at
/root/compile/php-5.5.1/Zend/zend_gc.c:143
No locals.
#1  0x00801268 in zend_hash_destroy (ht=0x7fffeef2b4a0) at
/root/compile/php-5.5.1/Zend/zend_hash.c:560
p = 0x7fffeef2b860
q = 0x7fffeef2b7b0
#2  0x007f206b in _zval_dtor_func (zvalue=0x7fffeef2b470) at
/root/compile/php-5.5.1/Zend/zend_variables.c:45
No locals.
#3  0x007e3178 in _zval_dtor (zvalue=0x7fffeef2b470) at
/root/compile/php-5.5.1/Zend/zend_variables.h:35
No locals.
#4  i_zval_ptr_dtor (zval_ptr=0x7fffeef2b470) at
/root/compile/php-5.5.1/Zend/zend_execute.h:81
No locals.
#5  _zval_ptr_dtor (zval_ptr=optimized out) at
/root/compile/php-5.5.1/Zend/zend_execute_API.c:426
No locals.
#6  0x00801268 in zend_hash_destroy (ht=0x7fffeef28b10) at
/root/compile/php-5.5.1/Zend/zend_hash.c:560
p = 0x7fffeef2bfd0
q = 0x7fffeef2ba80
#7  0x007f206b in _zval_dtor_func (zvalue=0x7fffeef28778) at
/root/compile/php-5.5.1/Zend/zend_variables.c:45
No locals.
#8  0x007e3178 in _zval_dtor (zvalue=0x7fffeef28778) at
/root/compile/php-5.5.1/Zend/zend_variables.h:35
No locals.
#9  i_zval_ptr_dtor (zval_ptr=0x7fffeef28778) at
/root/compile/php-5.5.1/Zend/zend_execute.h:81
No locals.
#10 _zval_ptr_dtor (zval_ptr=optimized out) at
/root/compile/php-5.5.1/Zend/zend_execute_API.c:426
No locals.
#11 0x00801268 in zend_hash_destroy (ht=0x7fffeef2cbb8) at
/root/compile/php-5.5.1/Zend/zend_hash.c:560
p = 0x7fffeef2ce78
q = 0x7fffeef2ce20
#12 0x0081579c in zend_object_std_dtor (object=0x7fffeef27cb0) at
/root/compile/php-5.5.1/Zend/zend_objects.c:44
No locals.
#13 0x00815829 in zend_objects_free_object_storage
(object=0x7fffeef27cb0) at /root/compile/php-5.5.1/Zend/zend_objects.c:137
No locals.
#14 0x0081b476 in zend_objects_store_free_object_storage
(objects=0x1085120)
at /root/compile/php-5.5.1/Zend/zend_objects_API.c:92
obj = optimized out
i = optimized out
#15 0x007e37e3 in shutdown_executor () at
/root/compile/php-5.5.1/Zend/zend_execute_API.c:293
__orig_bailout = 0x7fffe460
__bailout = {{__jmpbuf = {17321344, -8869895244590628792, 0, 0, 0,
17333536, 8869894737283235912, -8869895235585851320},
__mask_was_saved = 0, __saved_mask = {__val =
{9576849035021516823, 0, 8402366, 17291648, 17319392, 140737353913872,
140737353912280, 140737353913920, 140737353912280, 0,
17321080, 1, 0, 0, 8330270, 17320992
#16 0x007f3075 in zend_deactivate () at
/root/compile/php-5.5.1/Zend/zend.c:939
No locals.
#17 0x00791637 in php_request_shutdown (dummy=optimized out) at
/root/compile/php-5.5.1/main/main.c:1803
report_memleaks = 1 '\001'
snip

-- 
Edit bug report at https://bugs.php.net/bug.php?id=65367edit=1
-- 
Try a snapshot (PHP 5.4):   
https://bugs.php.net/fix.php?id=65367r=trysnapshot54
Try a snapshot (PHP 5.3):   
https://bugs.php.net/fix.php?id=65367r=trysnapshot53
Try a snapshot (trunk): 
https://bugs.php.net/fix.php?id=65367r=trysnapshottrunk
Fixed in SVN:   https://bugs.php.net/fix.php?id=65367r=fixed
Fixed in release:   https://bugs.php.net/fix.php?id=65367r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=65367r=needtrace
Need Reproduce Script:  https://bugs.php.net/fix.php?id=65367r=needscript
Try newer version:  https://bugs.php.net/fix.php?id=65367r=oldversion
Not developer issue:

[PHP-BUG] Bug #55665 [NEW]: Segmentation fault in gc_mark_roots()

2011-09-10 Thread mbecc...@php.net
From: mbeccati
Operating system: FreeBSD 6.2
PHP version:  5.3SVN-2011-09-10 (SVN)
Package:  Reproducible crash
Bug Type: Bug
Bug description:Segmentation fault in gc_mark_roots()

Description:

As usual with bugs related to garbage collection, I don't have a short
reproduce code. The segmentation fault happens when running a pretty heavy
integration test and is currently reproducible on PHP 5.3 (tested 5.3.4,
5.3.6RC3, 5.3.8 and PHP_5_3 svn HEAD). Unfortunately garbage collection is
a bit too much for me to be able to make sense of it and debug the issue.

Interestingly enough I couldn't reproduce it on PHP 5.2 or PHP 5.4.

Happens both with gcc 3.4.6 and 4.2.5 with -O0.

SSH Access to the machine is available for anyone interested in
investigating.



Actual result:
--
Here is the relevant portion of backtrace and some other gdb commands:

#0  0x0094a060 in gc_mark_roots () at
/array1/compile/php-src/php/php-src/branches/PHP_5_3/Zend/zend_gc.c:434
434 if (GC_ZVAL_GET_COLOR(current-u.pz) ==
GC_PURPLE) {
(gdb) bt full
#0  0x0094a060 in gc_mark_roots () at
/array1/compile/php-src/php/php-src/branches/PHP_5_3/Zend/zend_gc.c:434
current = (gc_root_buffer *) 0x11121a0
#1  0x0094a90c in gc_collect_cycles () at
/array1/compile/php-src/php/php-src/branches/PHP_5_3/Zend/zend_gc.c:664
p = (zval_gc_info *) 0x1e8fbd0
q = (zval_gc_info *) 0x7fffccd8
orig_free_list = (zval_gc_info *) 0x377c42d8edc99ee
orig_next_to_free = (zval_gc_info *) 0x901e88190
count = 0
#2  0x009495c2 in gc_zval_possible_root (zv=0x3e37620) at
/array1/compile/php-src/php/php-src/branches/PHP_5_3/Zend/zend_gc.c:166
newRoot = (gc_root_buffer *) 0x0
#3  0x009bb104 in ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER
(execute_data=0x1390810) at zend_gc.h:183
opline = (zend_op *) 0x1e8fbf8
free_op1 = {var = 0x0}
dim = (zval *) 0x3e37708
container = (zval **) 0x3057850
#4  0x00953c58 in execute (op_array=0x1e8be08) at
zend_vm_execute.h:107
ret = 0
execute_data = (zend_execute_data *) 0x1390810
nested = 1 '\001'
original_in_execution = 0 '\0'
...
(gdb) print current-u.pz
$1 = (zval *) 0x3e9fd38
(gdb) print *current-u.pz
Cannot access memory at address 0x3e9fd38
(gdb) frame 4
#4  0x00953c58 in execute (op_array=0x1e8be08) at
zend_vm_execute.h:107
107 if ((ret = EX(opline)-handler(execute_data
TSRMLS_CC))  0) {
(gdb) dump_bt executor_globals.current_execute_data
[0x01390810] addItem()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container.php:153
[0x013905c0] addItem()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container.php:108
[0x01390450] createItem()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container.php:196
[0x01390008] createDirective()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container/PHPArray.php:113
[0x0138fbc0] _parseArray()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container/PHPArray.php:111
[0x0138f5a0] _parseArray()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config/Container/PHPArray.php:75
[0x0138ef48] parseDatasrc()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/pear/Config.php:197
[0x0138ebd8] parseConfig()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/OA/Admin/Settings.php:364
[0x0138b9b0] writeConfigArrayToFile()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/OA/Admin/Settings.php:173
[0x0138b7a0] writeConfigChange()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/OX/Plugin/PluginManager.php:870
[0x0138ac18] _setPackage()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/OX/Plugin/PluginManager.php:518
[0x0138a0e8] enablePackage()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/tests/testClasses/TestEnv.php:183
[0x01389198] installPluginPackage()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/plugins_repo/apRetargetingDriverExternal/plugins/apRetargeting/lib/Dal/Drivers/tests/integration/External.plg.test.php:28
[0x01388f80] setUp()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/simpletest/invoker.php:67
[0x01388e50] invoke()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/simpletest/invoker.php:126
[0x01388878] invoke()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/simpletest/errors.php:48
[0x01388748] invoke()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/simpletest/invoker.php:126
[0x01388228] invoke()
/usr/local/bamboo/test-home/xml-data/build-dir/RET-TRUNK-PHPBUG/lib/simpletest/exceptions.php:42
[0x01387a28] invoke()

[PHP-BUG] Bug #52349 [NEW]: zend_mm_heap corrupted error

2010-07-15 Thread mbecc...@php.net
From: mbeccati
Operating system: FreeBSD 6.2
PHP version:  5.3.3RC3
Package:  Reproducible crash
Bug Type: Bug
Bug description:zend_mm_heap corrupted error

Description:

A few things:



* It happens when running a specific simpletest integration test 

* It doesn't always happen, roughly 33-50% of the times

* Never happened with 5.3.2, I got a report from Bamboo as soon as I
upgraded to 5.3.3RC3



Of course I can't get a simple reproduce script as the aforementioned test
does tons of things, but of course I can provide more information, SSH
access, or try anything I'm asked to.

Test script:
---
n/a

Expected result:

No failure

Actual result:
--
zend_mm_heap corrupted exit message, with the following backtrace



#0  0x0079f25b in zval_scan (pz=0x3b31970) at
/array1/compile/php-5.3.3RC3-fcgi/Zend/zend_gc.c:485

p = (Bucket *) 0x3661108

#1  0x0079f6b9 in gc_collect_cycles () at
/array1/compile/php-5.3.3RC3-fcgi/Zend/zend_gc.c:535

p = (zval_gc_info *) 0xee5ee0

q = (zval_gc_info *) 0x0

orig_free_list = (zval_gc_info *) 0x7fffc6e0

orig_next_to_free = (zval_gc_info *) 0x211ef18

count = 0

#2  0x0079fbd8 in gc_zval_possible_root (zv=0x33588b0) at
/array1/compile/php-5.3.3RC3-fcgi/Zend/zend_gc.c:166

newRoot = (gc_root_buffer *) 0x3627830

#3  0x007a4fde in zend_assign_to_object (result=0x211ef18,
object_ptr=0xe567a0, property_name=0x211ef60, value_op=0x211efb0,
Ts=0x113b228, opcode=136) at
/array1/compile/php-5.3.3RC3-fcgi/Zend/zend_execute.c:602

object = (zval *) 0x3632b70

free_value = {var = 0x113b701}

value = (zval *) 0x33588b0

retval = (zval **) 0x113b6e0

#4  0x007e2796 in ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_HANDLER
(execute_data=0x113b190) at zend_vm_execute.h:17645

opline = (zend_op *) 0x0

#5  0x007a65f9 in execute (op_array=0x2119968) at
zend_vm_execute.h:107

ret = 0

execute_data = (zend_execute_data *) 0x113b190

nested = 1 '\001'

original_in_execution = 1 '\001'

#6  0x00777d94 in zend_call_function (fci=0x7fffc970,
fci_cache=0x0) at
/array1/compile/php-5.3.3RC3-fcgi/Zend/zend_execute_API.c:963

call_via_handler = 34934168

i = 18062328

original_return_value = (zval **) 0x1139bf8

calling_symbol_table = (HashTable *) 0x0

original_op_array = (zend_op_array *) 0x2150d98

original_opline_ptr = (zend_op **) 0x1139f28

current_scope = (zend_class_entry *) 0x2118528

current_called_scope = (zend_class_entry *) 0x2104658

calling_scope = (zend_class_entry *) 0x2104658

called_scope = (zend_class_entry *) 0x2104658

current_this = (zval *) 0x30c9840

execute_data = {opline = 0x0, function_state = {function =
0x2109b78, arguments = 0x113a068}, fbc = 0x0, called_scope = 0x0, op_array
= 0x0, object = 0x3632b70, Ts = 0x1139fe0, CVs = 0x1139fc0, symbol_table =
0x0,

  prev_execute_data = 0x1139f28, old_error_reporting = 0x0, nested = 1
'\001', original_return_value = 0x2104658, current_scope = 0x30c9840,
current_called_scope = 0x0, current_this = 0x0, current_object = 0x0,
call_opline = 0x1139fc8}

#7  0x00728986 in xml_call_handler (parser=0x2f77938,
handler=0x3356688, function_ptr=0x3627830, argc=3, argv=0x7fffca50) at
/array1/compile/php-5.3.3RC3-fcgi/ext/xml/xml.c:530

args = (zval ***) 0x2f7e210

retval = (zval *) 0x0

result = -13744

fci = {size = 72, function_table = 0xe58180, function_name =
0x3356688, symbol_table = 0x0, retval_ptr_ptr = 0x7fffc968, param_count
= 3, params = 0x2f7e210, object_ptr = 0x3632b70, no_separation = 0 '\0'}

i = 3

#8  0x0072926a in _xml_startElementHandler (userData=0x2f77938,
name=0x11fa8c0 plugin, attributes=0x0) at
/array1/compile/php-5.3.3RC3-fcgi/ext/xml/xml.c:822

attrs = (const char **) 0x0

att = 0x0

val = 0x11fa8c0 plugin

val_len = 0

retval = (zval *) 0x821ae6ce

args = {0x37ba0f0, 0x3359b18, 0x37ba450}

#9  0x0072b56e in _start_element_handler (user=0x2d40860,
name=0x11fa8c0 plugin, attributes=0x0) at
/array1/compile/php-5.3.3RC3-fcgi/ext/xml/compat.c:84

qualified_name = (xmlChar *) 0x11fa8c0 plugin

#10 0x820fa26a in xmlParseStartTag () from
/usr/local/lib/libxml2.so.5

No symbol table info available.

#11 0x820ff102 in xmlParseTryOrFinish () from
/usr/local/lib/libxml2.so.5

No symbol table info available.

#12 0x821004ab in xmlParseChunk () from
/usr/local/lib/libxml2.so.5

No symbol table info available.

#13 0x0072c00d in php_XML_Parse (parser=0x2d40860, data=0x3540020
, data_len=56784944, is_final=0) at
/array1/compile/php-5.3.3RC3-fcgi/ext/xml/compat.c:605

error = 0

#14 0x0072a963 in zif_xml_parse 

Bug #51248 [Com]: Segmentation fault in mysql_fetch_array

2010-04-09 Thread mbecc...@php.net
Edit report at http://bugs.php.net/bug.php?id=51248edit=1

 ID:   51248
 Comment by:   mbecc...@php.net
 Reported by:  mbecc...@php.net
 Summary:  Segmentation fault in mysql_fetch_array
 Status:   Feedback
 Type: Bug
 Package:  MySQL related
 Operating System: FreeBSD 6.2
 PHP Version:  5.3.2
 Assigned To:  mysql

 New Comment:

I've been able to test the drush script with a newly compiled 5.3.2 w/
mysqlnd and it appears that the segmentation fault is gone. Is there any
way I can trace what happens with libmysql?



i.e.



libmysql:

$ /usr/local/bin/php ~/bin/drush/drush.php dis twitter

The following projects will be disabled: twitter

Do you really want to continue? (y/n): y

Segmentation fault: 11 (core dumped)



mysqlnd:

$ /array1/compile/php-5.3.2-apache/sapi/cli/php -d
mysqlnd.debug=t:o,/tmp/mysqlnd.trace ~/bin/drush/drush.php dis
twitter

The following projects will be disabled: twitter

Do you really want to continue? (y/n): y

twitter was disabled successfully.  
[ok]


Previous Comments:

[2010-04-08 16:57:29] mbecc...@php.net

I've been using libmysql, but IIRC I've also tried mysqlnd and had the
same result. As soon as I have time, I'll try to make a test build with
mysqlnd and generate the trace file.


[2010-04-08 16:50:54] and...@php.net

Do you use libmysql or mysqlnd as the underlying library? if mysqlnd
then can you try a debug build and put into your php.ini :
mysqlnd.debug=t:o,/tmp/mysqlnd.trace . Then please mail me the trace
file because it won't be small.

Thanks!



Andrey


[2010-03-29 21:03:43] mgarrison at alienz dot net

I'm also able to reproduce this but with custom code, replicated with
5.3.2 and 

php5.3-201003291630 on a CentOS 4.8 box. Doesn't happen in php 5.2.12.



(gdb) bt

#0  0x7fdcc37cdac3 in zend_fetch_resource (passed_id=0x7fffd484e6a0,


default_id=-1, resource_type_name=0x7fdcc3a8ce08 MySQL result, 

found_resource_type=0x0, num_resource_types=1)

at /usr/src/php-5.3.2/Zend/zend_list.c:127

#1  0x7fdcc3651846 in php_mysql_fetch_hash (ht=2, 

return_value=0x7fdcbf0e2970, return_value_ptr=Variable
return_value_ptr is not 

available.

) at /usr/src/php-5.3.2/ext/mysql/php_mysql.c:1944

#2  0x7fdcc3651dcb in zif_mysql_fetch_array (ht=-729487712, 

return_value=0x, return_value_ptr=0x7fdcc37cd9cf, this_ptr=0x0,


return_value_used=1)

at /usr/src/php-5.3.2/ext/mysql/php_mysql.c:2105

#3  0x7fdcc37e2c62 in zend_do_fcall_common_helper_SPEC 

(execute_data=0x7fdcc2b34310) at
/usr/src/php-5.3.2/Zend/zend_vm_execute.h:313

#4  0x7fdcc37e2089 in execute (op_array=0x7fdcbf4841c8) at
/usr/src/php-

5.3.2/Zend/zend_vm_execute.h:104

#5  0x7fdcc37c0345 in zend_execute_scripts (type=8, retval=0x0, 

file_count=3) at /usr/src/php-5.3.2/Zend/zend.c:1194

#6  0x7fdcc376e67d in php_execute_script
(primary_file=0x7fffd4850da0) at 

/usr/src/php-5.3.2/main/main.c:2260

#7  0x7fdcc3845d12 in apache_php_module_main (r=Variable r is not


available.

) at /usr/src/php-5.3.2/sapi/apache/sapi_apache.c:53

#8  0x7fdcc38468ce in send_php (r=0xcec3d0, display_source_mode=0, 

filename=0x0) at /usr/src/php-5.3.2/sapi/apache/mod_php5.c:682

#9  0x7fdcc3846ac3 in send_parsed_php (r=0x7fffd484e6a0) at
/usr/src/php-

5.3.2/sapi/apache/mod_php5.c:697

#10 0x004428e4 in ap_invoke_handler ()

#11 0x0045a74e in process_request_internal ()

#12 0x0045ac19 in ap_internal_redirect ()

#13 0x7fdcc3ee7f7c in mod_gzip_redir1_handler () from 

/var/www/libexec/mod_gzip.so

#14 0x7fdcc3ee61eb in mod_gzip_handler () from
/var/www/libexec/mod_gzip.so

#15 0x004428e4 in ap_invoke_handler ()

#16 0x0045a74e in process_request_internal ()

#17 0x0045a7a3 in ap_process_request ()

#18 0x00450a06 in child_main ()

#19 0x00450cf1 in make_child ()

#20 0x0045109e in perform_idle_server_maintenance ()

#21 0x004516c3 in standalone_main ()

#22 0x00451cb7 in main ()


[2010-03-09 20:20:13] mbecc...@php.net

Description:

I've been asked to publish a Drupal based website on my 5.3.2 box, but
every page call triggers a segmentation fault. Replicated with 5.3.1 as
well.



I've been able to test an old 5.2.8 and the issue is gone.



I can't attach a reproduce code, but I will try to gather more
information in the next few days. For now I'm attaching the backtrace.

Actual result:
--
Program received signal SIGSEGV, Segmentation fault.

0x8518a7c3 in zend_fetch_resource (passed_id=0x7fffcc50,
default_id=-1, resource_type_name=0x855c3d6f MySQL result

[PHP-BUG] Bug #51248 [NEW]: Segmentation fault in mysql_fetch_array

2010-03-09 Thread mbecc...@php.net
From: mbeccati
Operating system: FreeBSD 6.2
PHP version:  5.3.2
Package:  MySQL related
Bug Type: Bug
Bug description:Segmentation fault in mysql_fetch_array

Description:

I've been asked to publish a Drupal based website on my 5.3.2 box, but
every page call triggers a segmentation fault. Replicated with 5.3.1 as
well.



I've been able to test an old 5.2.8 and the issue is gone.



I can't attach a reproduce code, but I will try to gather more information
in the next few days. For now I'm attaching the backtrace.

Actual result:
--
Program received signal SIGSEGV, Segmentation fault.

0x8518a7c3 in zend_fetch_resource (passed_id=0x7fffcc50,
default_id=-1, resource_type_name=0x855c3d6f MySQL result,
found_resource_type=0x0, num_resource_types=1) at
/root/compile/php-5.3.2-apache/Zend/zend_list.c:127

127   } else if ((*passed_id)-type != IS_RESOURCE) {

(gdb) bt full

#0  0x8518a7c3 in zend_fetch_resource (passed_id=0x7fffcc50,
default_id=-1, resource_type_name=0x855c3d6f MySQL result,
found_resource_type=0x0, num_resource_types=1) at
/root/compile/php-5.3.2-apache/Zend/zend_list.c:127

id = -1

actual_resource_type = 0

resource = (void *) 0x10

resource_types = {{gp_offset = 5, fp_offset = 0, overflow_arg_area
= 0x861c775b, reg_save_area = 0x300020}}

i = -1

space = 0x85185062 H\201Äè

class_name = 0x1 Address 0x1 out of bounds

#1  0x84fabcc6 in php_mysql_fetch_hash (ht=2,
return_value=0xb04ae0, return_value_ptr=0x8518a6cf, this_ptr=0x0,
return_value_used=1, result_type=1, expected_args=2, into_object=0)

at /root/compile/php-5.3.2-apache/ext/mysql/php_mysql.c:1944

class_name = 0x7fffcd40 Ðî©

class_name_len = 32767

mysql_result = (MYSQL_RES *) 0x2

res = (zval *) 0x0

ctor_params = (zval *) 0x0

ce = (zend_class_entry *) 0x0

i = 17

mysql_field = (MYSQL_FIELD *) 0x0

mysql_row = (MYSQL_ROW) 0xa9eed0

mysql_row_lengths = (long unsigned int *) 0x1

#2  0x84fac24b in zif_mysql_fetch_array (ht=-13232,
return_value=0x, return_value_ptr=0x8518a6cf, this_ptr=0x0,
return_value_used=1) at
/root/compile/php-5.3.2-apache/ext/mysql/php_mysql.c:2105

No locals.

#3  0x8519fa82 in zend_do_fcall_common_helper_SPEC
(execute_data=0x9cef80) at
/root/compile/php-5.3.2-apache/Zend/zend_vm_execute.h:313

i = 0

p = (zval **) 0x9cef70

arg_count = 2

opline = (zend_op *) 0xa9eed0

should_change_scope = 0 '\0'

#4  0x8519eea9 in execute (op_array=0xa94e00) at
/root/compile/php-5.3.2-apache/Zend/zend_vm_execute.h:104

ret = 0

execute_data = (zend_execute_data *) 0x9cef80

nested = 1 '\001'

original_in_execution = 0 '\0'

#5  0x8517d055 in zend_execute_scripts (type=8, retval=0x0,
file_count=3) at /root/compile/php-5.3.2-apache/Zend/zend.c:1194

files = {{gp_offset = 40, fp_offset = 48, overflow_arg_area =
0x7fffd000, reg_save_area = 0x7fffcf10}}

i = 1

file_handle = (zend_file_handle *) 0x7fffe640

orig_op_array = (zend_op_array *) 0x0

orig_retval_ptr_ptr = (zval **) 0x0

#6  0x8512a7db in php_execute_script (primary_file=0x7fffe640)
at /root/compile/php-5.3.2-apache/main/main.c:2260

realfile = \000\000\000\000\000\000\000\000Ù\204{\200, '\0'
repeats 16 times,
ÿ\177\000\000\002\000\000\000\002\000\000\000Ì\217\233\000\000\000\000\000\v\000\000\000\000\000\000\000\020V\200\000\000\000\000
äW\200\000\000\000\000Àãÿÿÿ\177\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000ÄI\a\000\000\000\000é\rV\200\000\000\000\000(p\233\000\000\000\000\000\0006X\200\000\000\000\000¸ãÿÿÿ\177,
'\0' repeats 11 times, äÿÿÿ\177\000\000{, '\0' repeats 15 times,
\001\000\000\000\000\000\000\000ÄI\a\000\000\000\000\001\fV\200\000\000\000\000\000ðW\200\000\000\000\000\000òW\200\000\000\000\000\000ôW\200...

prepend_file_p = (zend_file_handle *) 0x0

append_file_p = (zend_file_handle *) 0x0

prepend_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0,
opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0,
isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0, old_handle =
0x0, old_closer = 0},

  reader = 0, fsizer = 0, closer = 0}}, free_filename = 0 '\0'}

append_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0,
opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0,
isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0, old_handle =
0x0, old_closer = 0},

  reader = 0, fsizer = 0, closer = 0}}, free_filename = 0 '\0'}

old_cwd = 0x7fffd010 /array1/compile

retval = 0

#7  0x85203a20 in php_handler (r=0x9cb3a0) at

#50621 [NEW]: Memory leak in OnUpdateUTF8String

2009-12-31 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: Ubuntu 9.10
PHP version:  6SVN-2009-12-31 (SVN)
PHP Bug Type: Unicode Engine related
Bug description:  Memory leak in OnUpdateUTF8String

Description:

Discovered this while checking for leaks in my own changes. It always
happens, even with an empty script.

90 bytes are definitely lost, plus 7+ kbytes still reachable that I'm not
reporting here (overlong list).

Reproduce code:
---
# valgrind --tool=memcheck --num-callers=30 --leak-check=full sapi/cli/php
 /dev/null

Expected result:

No leaks

Actual result:
--
==18400== HEAP SUMMARY:
==18400== in use at exit: 7,750 bytes in 33 blocks
==18400==   total heap usage: 36,914 allocs, 36,881 frees, 4,687,551 bytes
allocated
==18400== 
==18400== 90 bytes in 2 blocks are definitely lost in loss record 28 of
32
==18400==at 0x4C2524D: realloc (vg_replace_malloc.c:476)
==18400==by 0x721D10: OnUpdateUTF8String (zend_ini.c:694)
==18400==by 0x722AAA: zend_register_ini_entries (zend_ini.c:215)
==18400==by 0x5937B9: zm_startup_session (session.c:2006)
==18400==by 0x70CC08: zend_startup_module_ex (zend_API.c:1929)
==18400==by 0x71525B: zend_hash_apply (zend_hash.c:873)
==18400==by 0x70CA1B: zend_startup_modules (zend_API.c:1978)
==18400==by 0x69EBC9: php_module_startup (main.c:2157)
==18400==by 0x7A37EC: php_cli_startup (php_cli.c:407)
==18400==by 0x7A412A: main (php_cli.c:781)
==18400== 
==18400== LEAK SUMMARY:
==18400==definitely lost: 90 bytes in 2 blocks
==18400==indirectly lost: 0 bytes in 0 blocks
==18400==  possibly lost: 0 bytes in 0 blocks
==18400==still reachable: 7,660 bytes in 31 blocks
==18400== suppressed: 0 bytes in 0 blocks


-- 
Edit bug report at http://bugs.php.net/?id=50621edit=1
-- 
Try a snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=50621r=trysnapshot52
Try a snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=50621r=trysnapshot53
Try a snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=50621r=trysnapshot60
Fixed in SVN:
http://bugs.php.net/fix.php?id=50621r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=50621r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=50621r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=50621r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=50621r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=50621r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=50621r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=50621r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=50621r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=50621r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=50621r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=50621r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=50621r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=50621r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=50621r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=50621r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=50621r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=50621r=mysqlcfg



#50575 [NEW]: PDO_PGSQL LOBs are not compatible with PostgreSQL 8.5

2009-12-25 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: *
PHP version:  5.2.12
PHP Bug Type: PDO related
Bug description:  PDO_PGSQL LOBs are not compatible with PostgreSQL 8.5

Description:

Tested with 8.5alpha3. Some 5.3+ improvemnts were not backported to 5.2.
Specifically ones that were raising the minimum requirements.

PDO_PGSQL in PHP 5.2 doesn't use PQunescapeBytea, but a copy of its code
taken from an old version of Postgres, thus can't properly decode bytea
fields on 8.5 because the default encoding has changed to the new hex
format, while 5.3+ can.


-- 
Edit bug report at http://bugs.php.net/?id=50575edit=1
-- 
Try a snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=50575r=trysnapshot52
Try a snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=50575r=trysnapshot53
Try a snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=50575r=trysnapshot60
Fixed in SVN:
http://bugs.php.net/fix.php?id=50575r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=50575r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=50575r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=50575r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=50575r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=50575r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=50575r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=50575r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=50575r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=50575r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=50575r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=50575r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=50575r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=50575r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=50575r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=50575r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=50575r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=50575r=mysqlcfg



#48188 [NEW]: Cannot execute a scrollable cursors twice with PDO_PGSQL

2009-05-08 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: *
PHP version:  5.3CVS-2009-05-08 (CVS)
PHP Bug Type: PDO related
Bug description:  Cannot execute a scrollable cursors twice with PDO_PGSQL

Description:

Scrollable cursor support for PDO_PGSQL was introduced in PHP 5.3 (see bug
#44861). Some small issues need to be ironed out, e.g. I found out that
it's impossible to execute a pdo statement using a cursor twice. The
current code fails as the cursor is already existing.

Reproduce code:
---
$pdo = new PDO(pgsql:dbname=test, 'user', 'pass', array(
PDO::ATTR_ERRMODE = PDO::ERRMODE_EXCEPTION
));

$res = $pdo-prepare(SELECT (?)::int AS x, array(
PDO::ATTR_CURSOR = PDO::CURSOR_SCROLL
));
try {
var_dump($res-execute(array(1)));
var_dump($res-execute(array(2)));
}  catch (Exception $e) {
var_dump($e-getMessage());
}


Expected result:

bool(true)
bool(true)

Actual result:
--
bool(true)
string(94) SQLSTATE[42P03]: Duplicate cursor: 7 ERROR:  cursor
pdo_crsr_0104fee8 already exists


-- 
Edit bug report at http://bugs.php.net/?id=48188edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=48188r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=48188r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=48188r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=48188r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=48188r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=48188r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=48188r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=48188r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=48188r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=48188r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=48188r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=48188r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=48188r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=48188r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=48188r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=48188r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=48188r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=48188r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=48188r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=48188r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=48188r=mysqlcfg



#48185 [NEW]: warning: value computed is not used in pdo_sqlite_stmt_get_col line 271

2009-05-07 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: *
PHP version:  5.3CVS-2009-05-07 (CVS)
PHP Bug Type: PDO related
Bug description:  warning: value computed is not used in 
pdo_sqlite_stmt_get_col line 271

Description:

Reported here:

http://gcov.php.net/viewer.php?version=PHP_5_3func=compile_results


-- 
Edit bug report at http://bugs.php.net/?id=48185edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=48185r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=48185r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=48185r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=48185r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=48185r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=48185r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=48185r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=48185r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=48185r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=48185r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=48185r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=48185r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=48185r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=48185r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=48185r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=48185r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=48185r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=48185r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=48185r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=48185r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=48185r=mysqlcfg



#48060 [NEW]: pdo_pgsql - large objects are returned as empty

2009-04-23 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: *
PHP version:  5.3CVS-2009-04-23 (CVS)
PHP Bug Type: PDO related
Bug description:  pdo_pgsql -  large objects are returned as empty

Description:

Bug isn't always reproducible. It might depend on various factors like
e.g. memory addresses in use (to me it happens when pdo_oci support is
compiled in).

Explanation: the fix for bug #46274 is not properly working under some
circumstances. The get_col function might be returning a (php_stream *)
which is treated like a string by the empty string check, leading to
inconsistent result (empty LOB) and a memory leak.


-- 
Edit bug report at http://bugs.php.net/?id=48060edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=48060r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=48060r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=48060r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=48060r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=48060r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=48060r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=48060r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=48060r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=48060r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=48060r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=48060r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=48060r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=48060r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=48060r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=48060r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=48060r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=48060r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=48060r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=48060r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=48060r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=48060r=mysqlcfg



#47870 [NEW]: array() returns NULL

2009-04-01 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: FreeBSD 6.2
PHP version:  5.3CVS-2009-04-01 (CVS)
PHP Bug Type: Arrays related
Bug description:  array() returns NULL

Description:

Again, another bug happening in a unit test of OpenX. The problem always
happens in the same test at the same point. What happens is that a simple
array() call is returning NULL on my FreeBSD system. The same test
generates a segmentation fault when run on our Linux based continuous
integration system.

Unfortunately I can't create a self-contained test case, but I can provide
access to the system or more data.

I will also attach a backtrace of the core dump (which might even not be
happening at the same place as the FreeBSD failure).

Reproduce code:
---
$ids = array();
echo 'On FreeBSD: ';
var_dump($ids);

Expected result:

On FreeBSD: Array ()

Actual result:
--
On FreeBSD: NULL

Backtrace (Linux):

Program terminated with signal 11, Segmentation fault.
(gdb) bt full
#0  ZEND_ASSIGN_SPEC_CV_VAR_HANDLER (execute_data=0x2ecf02d8) at
/usr/local/src/php-5.3.0RC1/Zend/zend_execute.c:664
opline = (zend_op *) 0x12eb418
free_op2 = {var = 0x273c0d0}
value = (zval *) 0x1
variable_ptr_ptr = (zval **) 0x2a0e848
#1  0x007242fb in execute (op_array=0x10fdf40) at
/usr/local/src/php-5.3.0RC1/Zend/zend_vm_execute.h:104
ret = value optimized out
execute_data = (zend_execute_data *) 0x2ecf02d8
nested = 1 '\001'
original_in_execution = 0 '\0'
#2  0x00701306 in zend_execute_scripts (type=8, retval=0x0,
file_count=3) at /usr/local/src/php-5.3.0RC1/Zend/zend.c:1188
files = {{gp_offset = 40, fp_offset = 73, overflow_arg_area =
0x7fffbdf97f10, reg_save_area = 0x7fffbdf97e20}}
i = 1
file_handle = (zend_file_handle *) 0x7fffbdf9a3e0
orig_op_array = (zend_op_array *) 0x0
orig_retval_ptr_ptr = (zval **) 0x0
#3  0x006ae155 in php_execute_script (primary_file=0x7fffbdf9a3e0)
at /usr/local/src/php-5.3.0RC1/main/main.c:2157
__orig_bailout = (jmp_buf *) 0x7fffbdf9a1c0
__bailout = {{__jmpbuf = {15364672, 903771196811129754, 1, 0, 0,
0, 903771196811177402, 903720367174677233}, __mask_was_saved = 0,
__saved_mask = {__val = {48, 7, 15372768, 9416, 216135044429,
17634384, 229440404087961, 48, 7403025, 15235744, 0, 206158430215,
140736380641392, 17634352, 17634352, 140736380641392
prepend_file_p = (zend_file_handle *) 0x0
append_file_p = (zend_file_handle *) 0x8
prepend_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0,
opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0,
isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0,
old_handle = 0x0, old_closer = 0}, reader = 0, fsizer = 0, closer
= 0}}, free_filename = 0 '\0'}
append_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0,
opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0,
isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0,
old_handle = 0x0, old_closer = 0}, reader = 0, fsizer = 0, closer
= 0}}, free_filename = 0 '\0'}
old_cwd = 0x7fffbdf97f20 
retval = 0
#4  0x0078bcee in main (argc=10, argv=0x7fffbdf9a658) at
/usr/local/src/php-5.3.0RC1/sapi/cli/php_cli.c:1159
__bailout = {{__jmpbuf = {216132590528, 903720367176127146, 0,
140736380642896, 110, 0, 903771196811129834, 903720367173477278},
__mask_was_saved = 0, __saved_mask = {__val = {140736380642608,
140736380642416, 57, 112, 15369344, 15369328, 216135048496,
216138037600, 81, 140736380641952, 216135037715, 47, 96, 50, 216130423719,
15369344
exit_status = 0
c = value optimized out
file_handle = {type = ZEND_HANDLE_MAPPED, filename =
0x7fffbdf9a935 run.php, opened_path = 0x0, handle = {fd = 17477016, fp =
0x10aad98, stream = {handle = 0x10aad98, isatty = 0, mmap = {
len = 5351, pos = 0, map = 0x2ed69000, buf = 0x2ed69000
, old_handle = 0x10d10b0, old_closer = 0x715dd0
zend_stream_stdio_closer}, reader = 0x716390 zend_stream_stdio_reader,
  fsizer = 0x7162d0 zend_stream_stdio_fsizer, closer = 0x716320
zend_stream_mmap_closer}}, free_filename = 0 '\0'}
behavior = 1
reflection_what = 0x0
orig_optind = 1
orig_optarg = 0x0
arg_free = 0x7fffbdf9a935 run.php
arg_excp = value optimized out
script_file = 0x7fffbdf9a935 run.php
interactive = 0
module_started = 1
request_started = 1
lineno = 1
exec_direct = 0x0
exec_run = 0x0
exec_begin = 0x0
exec_end = 0x0
param_error = value optimized out
hide_argv = 0
ini_entries_len = value optimized out


-- 
Edit bug report at http://bugs.php.net/?id=47870edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=47870r=trysnapshot52
Try a CVS snapshot

#47851 [NEW]: is_callable throws fatal error

2009-03-31 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: Irrelevant
PHP version:  5.3CVS-2009-03-31 (CVS)
PHP Bug Type: Class/Object related
Bug description:  is_callable throws fatal error

Description:

Under some circumstances is_callable() throws a fatal error when testing
if the PHP4-style constructor of the class (e.g. is_callable(array('test1',
'test1')).

Unfortunately I wasn't able to create a self-contained example, but the
issue seems to happen often when using Simpletest Mocks in the OpenX test
suite.

It's ok if is_callable returns false if the method cannot be called
statically, but definitely a fatal error isn't expected.

Reproduce code:
---
echo Test;
is_callable(array('OX_Dal_Maintenance_Statistics',
'OX_Dal_Maintenance_Statistics'));

Expected result:

Test

Actual result:
--
Test
Fatal error: Non-static method
OX_Dal_Maintenance_Statistics::OX_Dal_Maintenance_Statistics() cannot be
called statically in ...

-- 
Edit bug report at http://bugs.php.net/?id=47851edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=47851r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=47851r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=47851r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=47851r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=47851r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=47851r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=47851r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=47851r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=47851r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=47851r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=47851r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=47851r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=47851r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=47851r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=47851r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=47851r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=47851r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=47851r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=47851r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=47851r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=47851r=mysqlcfg



#47852 [NEW]: Compilation failure in zend_alloc.c

2009-03-31 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: NetBSD 5
PHP version:  5.3CVS-2009-03-31 (CVS)
PHP Bug Type: Compile Failure
Bug description:  Compilation failure in zend_alloc.c

Description:

NetBSD 5 introduced mremap() but the signature is different from what we
expect.

From man remap:

COMPATIBILITY
 The semantics of mremap() differ from the one provided by glibc on
Linux
 in that the newp argument was added and a different set of flags are
 implemented.


A patch is available here:
http://www.beccati.com/misc/php/zend_alloc_netbsd.diff

NetBSD 4 compiles without any problem because mremap is not available.


-- 
Edit bug report at http://bugs.php.net/?id=47852edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=47852r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=47852r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=47852r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=47852r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=47852r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=47852r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=47852r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=47852r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=47852r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=47852r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=47852r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=47852r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=47852r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=47852r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=47852r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=47852r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=47852r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=47852r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=47852r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=47852r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=47852r=mysqlcfg



#47816 [NEW]: pcntl tests failing on NetBSD

2009-03-27 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: NetBSD 4
PHP version:  5.3CVS-2009-03-28 (CVS)
PHP Bug Type: PCNTL related
Bug description:  pcntl tests failing on NetBSD

Description:

There are a few problems with the new pcntl extension on my NetBSD 4.0
system. The extension compiles fine, but a few tests fail.

First, it seems that NetBSD sigtimedwait / sigwaitinfo implementations
return 0 on success and -1 on failure, rather then the signal number: see
http://www.daemon-systems.org/man/sigwait.2.html

A patch is available here:
http://www.beccati.com/misc/php/pcntl_sigtimedwait_HEAD.diff

I didn't commit myself as you might want a better (autoconf based?) fix.

Second, there are a couple of kernel bugs interfering with pcntl properly
working:

http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=41076 (Fixed in
-current)
http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=41085 (Under
investigation)

Once those bugs have been fixed the extensions should be properly working
on NetBSD.

Reproduce code:
---
pcntl_sigprocmask(SIG_BLOCK, array(SIGTERM));
posix_kill(posix_getpid(), SIGTERM);
var_dump(pcntl_sigwaitinfo(array(SIGTERM), $siginfo));
var_dump($siginfo);


Expected result:

int(15)
array(3) {
  [usigno]=
  int(15)
  [uerrno]=
  int(0)
  [ucode]=
  int(0)
}


Actual result:
--
int(0)
NULL


-- 
Edit bug report at http://bugs.php.net/?id=47816edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=47816r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=47816r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=47816r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=47816r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=47816r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=47816r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=47816r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=47816r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=47816r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=47816r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=47816r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=47816r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=47816r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=47816r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=47816r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=47816r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=47816r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=47816r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=47816r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=47816r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=47816r=mysqlcfg



#47779 [NEW]: Wrong value for SIG_UNBLOCK and SIG_SETMASK constants

2009-03-25 Thread mbecc...@php.net
From: mbecc...@php.net
Operating system: *
PHP version:  5.3CVS-2009-03-25 (CVS)
PHP Bug Type: PCNTL related
Bug description:  Wrong value for SIG_UNBLOCK and SIG_SETMASK constants

Description:

While chking pcntl.c because of build errors on FreeBSD 6 and test
failures on NetBSD 4, I spotted that SIG_UNBLOCK and SIG_SETMASK both have
the same value as SIG_BLOCK.

Patch w/ test available here:

http://www.beccati.com/misc/php/pcntl_sig_constants_HEAD.diff

My karma prevents me from committing directly.

Reproduce code:
---
var_dump(SIG_BLOCK);
var_dump(SIG_UNBLOCK);
var_dump(SIG_SETMASK);

Expected result:

int(0)
int(1)
int(2)

Actual result:
--
int(0)
int(0)
int(0)

-- 
Edit bug report at http://bugs.php.net/?id=47779edit=1
-- 
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=47779r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=47779r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=47779r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=47779r=fixedcvs
Fixed in CVS and need be documented: 
http://bugs.php.net/fix.php?id=47779r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=47779r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=47779r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=47779r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=47779r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=47779r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=47779r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=47779r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=47779r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=47779r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=47779r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=47779r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=47779r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=47779r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=47779r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=47779r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=47779r=mysqlcfg