#19775 [NEW]: PHP crashes when trying to access 2d int matrix returned from java

From: Date: Sat, 05 Oct 2002 21:55:58 +0000
Subject: #19775 [NEW]: PHP crashes when trying to access 2d int matrix returned from java
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-21598@lists.php.net to get a copy of this message
From: waazup@hotmail.com Operating system: Windows XP Pro PHP version: 4.2.3 PHP Bug Type: Reproducible crash Bug description: PHP crashes when trying to access 2d int matrix returned from java I used PHP 4.2.3 zip file for windows. The GD extension and the Java extension are used and the appropriate paths are set for in Java in the php.ini PHP is crashing when I try to get the value of a specific point in my 2 dimensional array. The error occurs on the second attempt in the same script to read from the array. Below I will include the java code used and the php code that calls the java object. Java Code: /** * Filter class designed to do computations for a php script * * @author (Peter Kroll) * @version (2002-10-02) */ public class Filter { /** * Constructor for objects of class Filter */ public Filter() { } /** * applyFilter * * @param * filterMatrix: 2 dimensional array of integers * imageMatrix: 2 dimensional array of integers * @return * newImageMatrix: 2 dimensional array of integers */ public int[][] applyFilter(double [][] filterMatrix, int filterDimension, int [][] imageMatrix, int imageSizeX, int imageSizeY) { int countX; int countY; double sum = 0; int posX; int posY; int pixelValue; int temp; int [][] newImageMatrix = new int[imageSizeX][imageSizeY]; // Apply filter to image for(countX = 0; countX < imageSizeX; countX++) { for(countY = 0; countY < imageSizeY; countY++) { sum = 0; for(posY = 0; posY < filterDimension; posY++) { for(posX = 0; posX < filterDimension; posX++) { if(countX - posX < 0 || countY - posY < 0) { pixelValue = 0; } else { pixelValue = imageMatrix[countX-posX][countY-posY]; sum = sum + imageMatrix[countX-posX][countY-posY] * filterMatrix[filterDimension - 1 - posX][filterDimension - 1 - posY]; } } } newImageMatrix[countX][countY] = (int) sum; } } return newImageMatrix; } } PHP code: // Apply filter to image $FilterObject = new Java("Filter"); $newImageMatrix = $FilterObject->applyFilter($filter, $filterDimension, $imageMatrix, $imageSizeX, $imageSizeY); $tempVal = $newImageMatrix[0][0]; print $tempVal . "<BR>\n"; $tempVal = $newImageMatrix[1][1]; print $tempVal . "<BR>\n"; The PHP code above is not my whole script but the part that calls Java and causes the error. Please note that the Java compiles fine and there are no errors in the PHP. The variables passed into the Java method are the same type as required by the Java method. I am able to read one value from the returned matrix and print it to the screen on the second attempt php crashes, this bug is reproducable 100% of the time. -- Edit bug report at http://bugs.php.net/?id=19775&edit=1 -- Try a CVS snapshot: http://bugs.php.net/fix.php?id=19775&r=trysnapshot Fixed in CVS: http://bugs.php.net/fix.php?id=19775&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=19775&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=19775&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=19775&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=19775&r=support Expected behavior: http://bugs.php.net/fix.php?id=19775&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=19775&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=19775&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=19775&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=19775&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=19775&r=dst IIS Stability: http://bugs.php.net/fix.php?id=19775&r=isapi

« previous php.bugs (#21598) next »