Changeset 323

Show
Ignore:
Timestamp:
08/14/07 13:02:03 (11 months ago)
Author:
hans
Message:

Fix for #242

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • eaccelerator/trunk/ChangeLog

    r308 r323  
     12007-08-14  Hans Rakers <hans at react.nl> 
     2 
     3        * Optimizer fix for #242. PHP-5.2.1 introduces a ZEND_JMP before a 
     4          ZEND_FETCH_CLASS/ZEND_CATCH which the optimizer did not handle 
     5          correctly, resulting in uncaught exceptions. (Thanks to warwickshaw) 
     6 
    172007-05-09  Bart Vanbrabant <bart.vanbrabant at zoeloelip.be> 
    28 
  • eaccelerator/trunk/optimize.c

    r322 r323  
    29762976                                                op->extended_value = 0; 
    29772977                                        } 
     2978#  if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 2 && PHP_RELEASE_VERSION >= 1) || PHP_MAJOR_VERSION >= 6 
     2979                                        /* php > 5.2.1 introduces a ZEND_JMP before a ZEND_FETCH_CLASS and ZEND_CATCH 
     2980                                           this leaves those blocks intact */ 
     2981                                        else if ((op+1)->opcode == ZEND_FETCH_CLASS && (op+2)->opcode == ZEND_CATCH) { /* fix for #242 */ 
     2982                                                p->follow = &bb[line_num]; 
     2983                                        } 
     2984#  endif 
    29782985#endif 
    29792986                                        break;