]> granicus.if.org Git - clang/commitdiff
[analyzer] Put more uniqueness in scan-build's temporary directory names.
authorJordan Rose <jordan_rose@apple.com>
Sat, 14 Sep 2013 00:41:32 +0000 (00:41 +0000)
committerJordan Rose <jordan_rose@apple.com>
Sat, 14 Sep 2013 00:41:32 +0000 (00:41 +0000)
This is necessary when running two scan-build processes in parallel. The
directory naming scheme is now:

  yyyy-MM-dd-HHmmss-PID-N
  2013-09-13-174210-123-1

where "PID" is the scan-build process ID, and "N" is a sequential counter
(not likely to be needed now that seconds are mangled in, but just in case).

PR17196, using a suggested fix from Greg Czajkowski!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190735 91177308-0d34-0410-b5e6-96231b3b80d8

tools/scan-build/scan-build

index 4590279b1569157a4799eda3e786d9e0524ff58c..4fcd74efe824f35e1f8b0ca2717d6e6c2cab8074 100755 (executable)
@@ -135,7 +135,13 @@ sub GetHTMLRunDir {
   my $year  = $CurrentTime[5] + 1900;
   my $day   = $CurrentTime[3];
   my $month = $CurrentTime[4] + 1;
-  my $DateString = sprintf("%d-%02d-%02d", $year, $month, $day);
+  my $hour =  $CurrentTime[2];
+  my $min =   $CurrentTime[1];
+  my $sec =   $CurrentTime[0];
+
+  my $TimeString = sprintf("%02d%02d%02d", $hour, $min, $sec)
+  my $DateString = sprintf("%d-%02d-%02d-%s-$$",
+                           $year, $month, $day, $TimeString);
   
   # Determine the run number.  
   my $RunNumber;
@@ -162,9 +168,11 @@ sub GetHTMLRunDir {
       next if ($x[0] != $year);
       next if ($x[1] != $month);
       next if ($x[2] != $day);
+      next if ($x[3] != $TimeString);
+      next if ($x[4] != $$);
       
-      if ($x[3] > $max) {
-        $max = $x[3];
+      if ($x[5] > $max) {
+        $max = $x[5];
       }      
     }