From 4d0c663f1fcc93dd3e12089fba060c21f17da8d0 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 14 May 2013 16:41:46 +0200 Subject: ultrastracke 2 --- useful/ultrastrace.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'useful') diff --git a/useful/ultrastrace.php b/useful/ultrastrace.php index eeff80c2..8c826ee5 100755 --- a/useful/ultrastrace.php +++ b/useful/ultrastrace.php @@ -13,6 +13,12 @@ $found = array(); array_shift($argv); +$unique = false; +if ($argv[0] == '-u') { + array_shift($argv); + $unique = true; +} + foreach ($argv as $fname) { $fh = fopen($fname, 'r'); if ($fh === false) die("File not found: $fname\n"); @@ -40,17 +46,22 @@ foreach ($argv as $fname) { $file = basename($out['lib']); $file = preg_replace('/\.so(\.\d+)*$/', '', $file); if ($out['ret'] < 0) { + $str = ':-( ' . $out['lib'] . ' *** (' . (isset($out['err']) ? $out['err'] : 'Unknown Error') . ') (' . $out[ 'action'] . ')'; if (isset($found[$file])) { - $found[$file][] = ':-( ' . $out['lib'] . ' *** (' . (isset($out['err']) ? $out['err'] : 'Unknown Error') . ') (' . $out['action'] . ')'; + if (!$unique || !in_array($str, $found[$file])) + $found[$file][] = $str; } else { - $failed[$file][] = ':-( ' . $out['lib'] . ' *** (' . (isset($out['err']) ? $out['err'] : 'Unknown Error') . ') (' . $out['action'] . ')'; + if (!$unique || !isset($failed[$file]) || !in_array($str, $failed[$file])) + $failed[$file][] = $str; } } else { if (isset($failed[$file])) { $found[$file] = $failed[$file]; unset($failed[$file]); } - $found[$file][] = ':-) ' . $out['lib'] . ' (' . $out['action'] . ')'; + $str = ':-) ' . $out['lib'] . ' (' . $out['action'] . ')'; + if (!$unique || !isset($found[$file]) || !in_array($str, $found[$file])) + $found[$file][] = $str; } } fclose($fh); -- cgit v1.2.3-55-g7522