#37566 [NEW]: session_set_save_handler _write can't throw Exception.
| From: | kotsutsumi at xenophy dot com | Date: | Tue, 23 May 2006 21:49:05 +0000 |
| Subject: | #37566 [NEW]: session_set_save_handler _write can't throw Exception. | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-97477@lists.php.net to get a copy of this message | ||
From: kotsutsumi at xenophy dot com
Operating system: FedoraCore5
PHP version: 5.1.4
PHP Bug Type: *General Issues
Bug description: session_set_save_handler _write can't throw Exception.
Description:
------------
It mounts in the class.
session_set_save_handler(
array($this, '_open'),
array($this, '_close'),
array($this, '_read'),
array($this, '_write'),
array($this, '_destroy'),
array($this, '_clean')
);
...
public function _write( $strID, &$objData ) {
// some process.
throw new Exception;
}
Result:
Exception thrown without a stack frame in ....
Why?
The exception is normally generated in other methods.
ex. _read,_destroy,_clear...
Reproduce code:
---------------
public function _write( $strID, &$objData ) {
try {
$strSQL = "REPLACE INTOd sessions hogeVALUES ( ?, ?, ? )";
$putData = $this->objResource->prepare( $strSQL );
$putData->bindParam( 1, $strID );
$putData->bindParam( 2, time() );
$putData->bindParam( 3, $objData );
$putData->execute();
return true;
} catch( PDOException $e) {
$strError = sprintf(
"ZbVf[^ÌÝèɸsµÜµ½B<br><br>%s"
,$e->getMessage() );
throw new Exception( $strError );
}
}
Expected result:
----------------
Fatal error: Exception thrown without a stack frame in Unknown on line 0
--
Edit bug report at http://bugs.php.net/?id=37566&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=37566&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=37566&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=37566&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=37566&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=37566&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=37566&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=37566&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=37566&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=37566&r=support
Expected behavior: http://bugs.php.net/fix.php?id=37566&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=37566&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=37566&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=37566&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=37566&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=37566&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=37566&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=37566&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=37566&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=37566&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=37566&r=mysqlcfg