From:             ninzya at inbox dot lv
Operating system: Windows XP
PHP version:      5.3.0RC1
PHP Bug Type:     Scripting Engine problem
Bug description:  Exception during object construction from arg call calls 
object's destructor

Description:
------------
If you create new object and pass to it's constructor argument from
function call, that has thrown an exception, the object's constructor is
not being called (which is correct behavior), but object's destructor is
being called (which is not correct behavior). See reproduce code.

Reproduce code:
---------------
<?php

function throw_exc() {
  throw new Exception('TEST_EXCEPTION');
}

class Test {
  
  public function __construct() {
    echo 'Constr' ."\n";
  }
  
  public function __destruct() {
    echo 'Destr' ."\n";
  }
  
}

try {
  
  $T =new Test( throw_exc());
  
} catch( Exception $e) {
  echo 'Exception: ' .$e->getMessage();
}

?>



Expected result:
----------------
Exception: TEST_EXCEPTION

Actual result:
--------------
Destr
Exception: TEST_EXCEPTION

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

Reply via email to