1010namespace Nette \Bridges \DatabaseTracy ;
1111
1212use Nette ;
13+ use Nette \Database \Connection ;
1314use Nette \Database \Helpers ;
1415use Tracy ;
1516
@@ -43,13 +44,13 @@ class ConnectionPanel implements Tracy\IBarPanel
4344 private $ queries = [];
4445
4546
46- public function __construct (Nette \ Database \ Connection $ connection )
47+ public function __construct (Connection $ connection )
4748 {
4849 $ connection ->onQuery [] = [$ this , 'logQuery ' ];
4950 }
5051
5152
52- public function logQuery (Nette \ Database \ Connection $ connection , $ result ): void
53+ public function logQuery (Connection $ connection , $ result ): void
5354 {
5455 if ($ this ->disabled ) {
5556 return ;
@@ -59,13 +60,11 @@ public function logQuery(Nette\Database\Connection $connection, $result): void
5960 $ source = null ;
6061 $ trace = $ result instanceof \PDOException ? $ result ->getTrace () : debug_backtrace (DEBUG_BACKTRACE_IGNORE_ARGS );
6162 foreach ($ trace as $ row ) {
62- if (isset ($ row ['file ' ]) && is_file ($ row ['file ' ]) && !Tracy \Debugger::getBluescreen ()->isCollapsed ($ row ['file ' ])) {
63- if (
64- (strpos ($ row ['function ' ] ?? '' , 'call_user_func ' ) === 0 )
65- || (is_subclass_of ($ row ['class ' ] ?? '' , '\\Nette \\Database \\Connection ' ))
66- ) {
67- continue ;
68- }
63+ if (
64+ (isset ($ row ['file ' ]) && is_file ($ row ['file ' ]) && !Tracy \Debugger::getBluescreen ()->isCollapsed ($ row ['file ' ]))
65+ && ($ row ['class ' ] ?? '' ) !== self ::class
66+ && !is_a ($ row ['class ' ] ?? '' , Connection::class, true )
67+ ) {
6968 $ source = [$ row ['file ' ], (int ) $ row ['line ' ]];
7069 break ;
7170 }
0 commit comments