Make scan-view more robust / friendly when bug reporting fails.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56382 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/scan-view/ScanView.py b/tools/scan-view/ScanView.py
index e340a9f..5e7bbf4 100644
--- a/tools/scan-view/ScanView.py
+++ b/tools/scan-view/ScanView.py
@@ -11,7 +11,7 @@
 import time
 import socket
 
-from Reporter import BugReport
+import Reporter
 
 # Keys replaced by server.
 
@@ -43,6 +43,13 @@
             time.sleep(3)
             if self.server.options.debug:
                 print >>sys.stderr, "%s: SERVER: submission complete."%(sys.argv[0],)
+        except Reporter.ReportFailure,e:
+            s = StringIO.StringIO()
+            print >>s,'Submission Failed<br><pre>'
+            print >>s,e.value
+            print >>s,'</pre>'
+            self.status = s.getvalue()
+            return            
         except Exception,e:
             s = StringIO.StringIO()
             import traceback
@@ -54,8 +61,8 @@
 
         s = StringIO.StringIO()
         print >>s, 'Submission Complete!'
-        print >>s, '<hr>'
         if result is not None:
+            print >>s, '<hr>'
             print >>s, result
         self.status = s.getvalue()
 
@@ -184,7 +191,7 @@
         # Create the report.
         path = os.path.join(self.server.root, 'report-%s.html'%report)
         files = [path]
-        br = BugReport(title, description, files)
+        br = Reporter.BugReport(title, description, files)
 
         # Send back an initial response and wait for the report to
         # finish.