From:             mccannwj at pha dot jhu dot edu
Operating system: redhat-linux-8.0
PHP version:      4.2.3
PHP Bug Type:     Reproducible crash
Bug description:  array_reduce segmentation fault

Using array_reduce on a nested list causes a segfault.

The following code isolates the problem.
<?php

$a['ANY']['F550M']['HRC']['j6jt01dlq_flt.fits'][] =
array("FILE_NUMBER"=>2256,
                                                          "INGEST_DATE"=>'2003-01-16');
$a['ANY']['F550M']['HRC']['j6jt01dll_flt.fits'][] =
array("FILE_NUMBER"=>2258,
                                                          "INGEST_DATE"=>'2003-01-17');

$num = nodeCount($a);
print $num;

function checkNode($v,$var) {
  print "<pre>";
  print_r($var);
  print "</pre>";
  if (is_scalar($var)) {
    $v += 1;
  }
  elseif (is_null($var)) {
  }
  else {
    $v += nodeCount($var);
  }
  return $v;
}
function nodeCount($array) {
  $number = 0;
  if (is_array($array))
    $number = array_reduce($array,"checkNode",0);
  return $number;
}
?>

How reproducible:
Always

Steps to Reproduce:
1. Execute code snippet
    
Actual Results:  apache error_log:
[Fri Feb 21 12:52:52 2003] [notice] child pid 5618 exit signal
Segmentation
fault (11)


Expected Results:  This code should count the scalar nodes in the nested
list. 
It should print the number 4.

Additional info:
-- 
Edit bug report at http://bugs.php.net/?id=22463&edit=1
-- 
Try a CVS snapshot:         http://bugs.php.net/fix.php?id=22463&r=trysnapshot
Fixed in CVS:               http://bugs.php.net/fix.php?id=22463&r=fixedcvs
Fixed in release:           http://bugs.php.net/fix.php?id=22463&r=alreadyfixed
Need backtrace:             http://bugs.php.net/fix.php?id=22463&r=needtrace
Try newer version:          http://bugs.php.net/fix.php?id=22463&r=oldversion
Not developer issue:        http://bugs.php.net/fix.php?id=22463&r=support
Expected behavior:          http://bugs.php.net/fix.php?id=22463&r=notwrong
Not enough info:            http://bugs.php.net/fix.php?id=22463&r=notenoughinfo
Submitted twice:            http://bugs.php.net/fix.php?id=22463&r=submittedtwice
register_globals:           http://bugs.php.net/fix.php?id=22463&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=22463&r=php3
Daylight Savings:           http://bugs.php.net/fix.php?id=22463&r=dst
IIS Stability:              http://bugs.php.net/fix.php?id=22463&r=isapi
Install GNU Sed:            http://bugs.php.net/fix.php?id=22463&r=gnused

Reply via email to