File tree Expand file tree Collapse file tree 3 files changed +32
-0
lines changed Expand file tree Collapse file tree 3 files changed +32
-0
lines changed Original file line number Diff line number Diff line change 4
4
- Fixed an error in mysqli_fetch_fields (returned NULL instead of an
5
5
array when row number > field_count). (Georg)
6
6
- Renamed CachingRecursiveIterator to RecursiveCachingIterator. (Marcus)
7
+ - Fixed bug #35437 (Segfault or Invalid Opcode 137/1/4). (Dmitry)
7
8
- Fixed bug #35399 (Since fix of bug #35273 SOAP decoding of
8
9
soapenc:base64binary fails). (Dmitry)
9
10
- Fixed bug #35360 (exceptions in interactive mode (php -a) may cause crash).
Original file line number Diff line number Diff line change
1
+ --TEST--
2
+ Bug #35437 Segfault or Invalid Opcode 137/1/4
3
+ --FILE--
4
+ <?php
5
+ function err2exception ($ errno , $ errstr )
6
+ {
7
+ throw new Exception ("Error occuried: " . $ errstr );
8
+ }
9
+
10
+ set_error_handler ('err2exception ' );
11
+
12
+ class TestClass
13
+ {
14
+ function testMethod ()
15
+ {
16
+ $ GLOBALS ['t ' ] = new stdClass ;
17
+ }
18
+ }
19
+
20
+ try {
21
+ TestClass::testMethod ();
22
+ } catch (Exception $ e ) {
23
+ echo "Catched: " .$ e ->getMessage ()."\n" ;
24
+ }
25
+ ?>
26
+ --EXPECT--
27
+ Catched: Error occuried: Non-static method TestClass::testMethod() should not be called statically
Original file line number Diff line number Diff line change @@ -1384,6 +1384,10 @@ ZEND_API void execute(zend_op_array *op_array TSRMLS_DC)
1384
1384
{
1385
1385
zend_execute_data execute_data ;
1386
1386
1387
+ if (EG (exception )) {
1388
+ return ;
1389
+ }
1390
+
1387
1391
/* Initialize execute_data */
1388
1392
EX (fbc ) = NULL ;
1389
1393
EX (object ) = NULL ;
You can’t perform that action at this time.
0 commit comments