bug 519194 - No symbols in stack trace on tests of optimized builds (landing without review, consider it a bustage fix)
authorTed Mielczarek <ted.mielczarek@gmail.com>
Fri, 02 Oct 2009 14:46:49 -0400
changeset 33395 0f0239688a76c6a992598b57a4e67bfc45793e19
parent 33394 72eb60dd0f50b3fe1cbcba8e2e4796ed65d747a6
child 33396 a85d7f4d6a0f8b49515caeddaf7774712b43296e
push id9475
push usertmielczarek@mozilla.com
push dateFri, 02 Oct 2009 18:45:30 +0000
treeherdermozilla-central@0f0239688a76 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs519194
milestone1.9.3a1pre
bug 519194 - No symbols in stack trace on tests of optimized builds (landing without review, consider it a bustage fix)
build/automationutils.py
layout/tools/reftest/runreftest.py
testing/mochitest/runtests.py.in
--- a/build/automationutils.py
+++ b/build/automationutils.py
@@ -74,16 +74,21 @@ def checkForCrashes(dumpDir, symbolsPath
   dumps = glob.glob(os.path.join(dumpDir, '*.dmp'))
   for d in dumps:
     log.info("TEST-UNEXPECTED-FAIL | %s | application crashed (minidump found)", testName)
     if symbolsPath and stackwalkPath:
       nullfd = open(os.devnull, 'w')
       # eat minidump_stackwalk errors
       subprocess.call([stackwalkPath, d, symbolsPath], stderr=nullfd)
       nullfd.close()
+    else:
+      if not symbolsPath:
+        print "No symbols path given, can't process dump."
+      if not stackwalkPath:
+        print "MINIDUMP_STACKWALK not set, can't process dump."
     os.remove(d)
     extra = os.path.splitext(d)[0] + ".extra"
     if os.path.exists(extra):
       os.remove(extra)
     foundCrash = True
 
   return foundCrash
 
--- a/layout/tools/reftest/runreftest.py
+++ b/layout/tools/reftest/runreftest.py
@@ -118,16 +118,18 @@ Are you executing $objdir/_tests/reftest
     sys.exit(1)
 
   if options.xrePath is None:
     options.xrePath = os.path.dirname(options.app)
   else:
     # allow relative paths
     options.xrePath = getFullPath(options.xrePath)
 
+  options.symbolsPath = getFullPath(options.symbolsPath)
+
   profileDir = None
   try:
     profileDir = mkdtemp()
     createReftestProfile(options, profileDir)
     copyExtraFilesToProfile(options, profileDir)
 
     # browser environment
     browserEnv = dict(os.environ)
--- a/testing/mochitest/runtests.py.in
+++ b/testing/mochitest/runtests.py.in
@@ -384,16 +384,17 @@ def main():
     msg = """\
 Error: Path %(app)s doesn't exist.
 Are you executing $objdir/_tests/testing/mochitest/runtests.py?"""
     print msg % {"app": options.app}
     sys.exit(1)
 
   options.utilityPath = getFullPath(options.utilityPath)
   options.certPath = getFullPath(options.certPath)
+  options.symbolsPath = getFullPath(options.symbolsPath)
 
   debuggerInfo = None
 
   if options.debugger:
     debuggerPath = searchPath(options.debugger)
     if not debuggerPath:
       print "Error: Path %s doesn't exist." % options.debugger
       sys.exit(1)