summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjokkedk <joakim@jokke.dk>2008-08-01 10:27:56 +0000
committerjokkedk <joakim@jokke.dk>2008-08-01 10:27:56 +0000
commit724a2282f4bbd9d92b50b4a4367cfe54b2930b94 (patch)
tree3757facb152301447a014959ee3c76d39cbe7b47
parent96b4cc8d50eb21c76ab36d19fcba4202d9fd0142 (diff)
downloadwebgrind-724a2282f4bbd9d92b50b4a4367cfe54b2930b94.zip
webgrind-724a2282f4bbd9d92b50b4a4367cfe54b2930b94.tar.gz
webgrind-724a2282f4bbd9d92b50b4a4367cfe54b2930b94.tar.bz2
Fixed #22, appended profiles did not display correct invokeUrl in popup
-rw-r--r--library/FileHandler.php17
1 files changed, 13 insertions, 4 deletions
diff --git a/library/FileHandler.php b/library/FileHandler.php
index 5e880bd..f855a75 100644
--- a/library/FileHandler.php
+++ b/library/FileHandler.php
@@ -51,12 +51,21 @@ class Webgrind_FileHandler{
* @return void string
*/
private function getInvokeUrl($file){
+ if (preg_match('/.webgrind$/', $file))
+ return 'Webgrind internal';
+
// Grab name of invoked file.
- // TODO: Makes assumptions about where the "cmd"-header is in a trace file. Not so cool, but a fast way to do it.
$fp = fopen($file, 'r');
- fgets($fp);
- $invokeUrl = trim(substr(fgets($fp), 5));
- fclose($fp);
+ $invokeUrl = '';
+ while ((($line = fgets($fp)) !== FALSE) && !strlen($invokeUrl)){
+ if (preg_match('/^cmd: (.*)$/', $line, $parts)){
+ $invokeUrl = isset($parts[1]) ? $parts[1] : '';
+ }
+ }
+ fclose($fp);
+ if (!strlen($invokeUrl))
+ $invokeUrl = 'Unknown!';
+
return $invokeUrl;
}