From 43020f20720b1560a6f0417565bdd49944a41a2e Mon Sep 17 00:00:00 2001 From: Chad Horohoe Date: Tue, 4 Nov 2014 09:40:40 -0800 Subject: [PATCH] Profiler: Call getContentType() only once in logData() Each call potentially does a regular expression check per output header. No point in multiplying that by 3. Change-Id: I30e9a6b5df1a773e9448ec9b77d0e79339f19738 --- includes/profiler/ProfilerSimpleText.php | 7 ++++--- includes/profiler/ProfilerSimpleTrace.php | 7 ++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/includes/profiler/ProfilerSimpleText.php b/includes/profiler/ProfilerSimpleText.php index 2d96b88827..cc18890c2f 100644 --- a/includes/profiler/ProfilerSimpleText.php +++ b/includes/profiler/ProfilerSimpleText.php @@ -50,17 +50,18 @@ class ProfilerSimpleText extends ProfilerStandard { : 0; // profiling mismatch error? uasort( $this->mCollated, array( 'self', 'sort' ) ); array_walk( $this->mCollated, array( 'self', 'format' ), $totalReal ); + $contentType = $this->getContentType(); if ( PHP_SAPI === 'cli' ) { print "\n"; - } elseif ( $this->getContentType() === 'text/html' ) { + } elseif ( $contentType === 'text/html' ) { if ( $this->visible ) { print '
' . self::$out . '
'; } else { print "\n"; } - } elseif ( $this->getContentType() === 'text/javascript' ) { + } elseif ( $contentType === 'text/javascript' ) { print "\n/*\n" . self::$out . "*/\n"; - } elseif ( $this->getContentType() === 'text/css' ) { + } elseif ( $contentType === 'text/css' ) { print "\n/*\n" . self::$out . "*/\n"; } } diff --git a/includes/profiler/ProfilerSimpleTrace.php b/includes/profiler/ProfilerSimpleTrace.php index 95e4bc6d29..0dd406798d 100644 --- a/includes/profiler/ProfilerSimpleTrace.php +++ b/includes/profiler/ProfilerSimpleTrace.php @@ -67,13 +67,14 @@ class ProfilerSimpleTrace extends ProfilerStandard { public function logData() { if ( $this->mTemplated ) { + $contentType = $this->getContentType(); if ( PHP_SAPI === 'cli' ) { print ""; - } elseif ( $this->getContentType() === 'text/html' ) { + } elseif ( $contentType === 'text/html' ) { print ""; - } elseif ( $this->getContentType() === 'text/javascript' ) { + } elseif ( $contentType === 'text/javascript' ) { print "\n/*\n {$this->trace}\n*/"; - } elseif ( $this->getContentType() === 'text/css' ) { + } elseif ( $contentType === 'text/css' ) { print "\n/*\n {$this->trace}\n*/"; } } -- 2.20.1