@@ -50,38 +50,43 @@ public function enableOnlyOptionalWarmers()
50
50
*/
51
51
public function warmUp ($ cacheDir )
52
52
{
53
+ $ restoreErrorHandler = false ;
54
+
53
55
if ($ this ->debug ) {
54
56
$ collectedLogs = [];
55
- $ previousHandler = \defined ('PHPUNIT_COMPOSER_INSTALL ' );
56
- $ previousHandler = $ previousHandler ?: set_error_handler (function ($ type , $ message , $ file , $ line ) use (&$ collectedLogs , &$ previousHandler ) {
57
- if (E_USER_DEPRECATED !== $ type && E_DEPRECATED !== $ type ) {
58
- return $ previousHandler ? $ previousHandler ($ type , $ message , $ file , $ line ) : false ;
59
- }
60
57
61
- if (isset ($ collectedLogs [$ message ])) {
62
- ++$ collectedLogs [$ message ]['count ' ];
58
+ if (\defined ('PHPUNIT_COMPOSER_INSTALL ' )) {
59
+ $ restoreErrorHandler = true ;
60
+ $ previousHandler = set_error_handler (function ($ type , $ message , $ file , $ line ) use (&$ collectedLogs , &$ previousHandler ) {
61
+ if (E_USER_DEPRECATED !== $ type && E_DEPRECATED !== $ type ) {
62
+ return $ previousHandler ? $ previousHandler ($ type , $ message , $ file , $ line ) : false ;
63
+ }
63
64
64
- return ;
65
- }
65
+ if ( isset ( $ collectedLogs [ $ message ])) {
66
+ ++ $ collectedLogs [ $ message ][ ' count ' ];
66
67
67
- $ backtrace = debug_backtrace (DEBUG_BACKTRACE_IGNORE_ARGS , 3 );
68
- // Clean the trace by removing first frames added by the error handler itself.
69
- for ($ i = 0 ; isset ($ backtrace [$ i ]); ++$ i ) {
70
- if (isset ($ backtrace [$ i ]['file ' ], $ backtrace [$ i ]['line ' ]) && $ backtrace [$ i ]['line ' ] === $ line && $ backtrace [$ i ]['file ' ] === $ file ) {
71
- $ backtrace = \array_slice ($ backtrace , 1 + $ i );
72
- break ;
68
+ return ;
69
+ }
70
+
71
+ $ backtrace = debug_backtrace (DEBUG_BACKTRACE_IGNORE_ARGS , 3 );
72
+ // Clean the trace by removing first frames added by the error handler itself.
73
+ for ($ i = 0 ; isset ($ backtrace [$ i ]); ++$ i ) {
74
+ if (isset ($ backtrace [$ i ]['file ' ], $ backtrace [$ i ]['line ' ]) && $ backtrace [$ i ]['line ' ] === $ line && $ backtrace [$ i ]['file ' ] === $ file ) {
75
+ $ backtrace = \array_slice ($ backtrace , 1 + $ i );
76
+ break ;
77
+ }
73
78
}
74
- }
75
79
76
- $ collectedLogs [$ message ] = [
77
- 'type ' => $ type ,
78
- 'message ' => $ message ,
79
- 'file ' => $ file ,
80
- 'line ' => $ line ,
81
- 'trace ' => $ backtrace ,
82
- 'count ' => 1 ,
83
- ];
84
- });
80
+ $ collectedLogs [$ message ] = [
81
+ 'type ' => $ type ,
82
+ 'message ' => $ message ,
83
+ 'file ' => $ file ,
84
+ 'line ' => $ line ,
85
+ 'trace ' => $ backtrace ,
86
+ 'count ' => 1 ,
87
+ ];
88
+ });
89
+ }
85
90
}
86
91
87
92
try {
@@ -96,7 +101,7 @@ public function warmUp($cacheDir)
96
101
$ warmer ->warmUp ($ cacheDir );
97
102
}
98
103
} finally {
99
- if ($ this ->debug && true !== $ previousHandler ) {
104
+ if ($ this ->debug && $ restoreErrorHandler ) {
100
105
restore_error_handler ();
101
106
102
107
if (file_exists ($ this ->deprecationLogsFilepath )) {
0 commit comments