Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Unified Diff: tools/valgrind/valgrind_test.py

Issue 8505028: Update chrome_tests.sh to run DrMemory from Cygwin Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« tools/valgrind/chrome_tests.sh ('K') | « tools/valgrind/chrome_tests.sh ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/valgrind/valgrind_test.py
===================================================================
--- tools/valgrind/valgrind_test.py (revision 109287)
+++ tools/valgrind/valgrind_test.py (working copy)
@@ -14,6 +14,7 @@
import logging
import optparse
import os
+import platform
import re
import shutil
import stat
@@ -706,6 +707,24 @@
return ret
+def _Cygpath(path):
Timur Iskhodzhanov 2011/11/10 11:52:49 maybe this should me moved to tools\valgrind\commo
Alexander Potapenko 2011/11/10 12:12:13 Am I right you're this function is called on every
Reid Kleckner (google) 2011/11/10 14:00:30 It's actually fairly specific to DrMemory, I think
Timur Iskhodzhanov 2011/11/10 14:03:19 The only reason for doing your CL is to support ru
Reid Kleckner (google) 2011/11/10 14:19:09 No. Because I'm using Cygwin, depot_tools uses th
+ """If we're using Cygwin Python, turn the path into a Windows path.
+
+ Don't turn forward slashes into backslashes for easier copy-pasting and
+ escaping.
+ """
+ if path[0] == "/" and "cygwin" in platform.system().lower():
+ p = subprocess.Popen(["cygpath", "-m", path],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ (out, err) = p.communicate()
+ if err:
+ logging.warning("WARNING: cygpath error: %s", err)
+ return out.strip()
+ else:
+ return path
+
+
class DrMemory(BaseTool):
"""Dr.Memory
Dynamic memory error detector for Windows.
@@ -798,7 +817,7 @@
for suppression_file in self._options.suppressions:
if os.path.exists(suppression_file):
suppression_count += 1
- proc += ["-suppress", suppression_file]
+ proc += ["-suppress", _Cygpath(suppression_file)]
if not suppression_count:
logging.warning("WARNING: NOT USING SUPPRESSIONS!")
@@ -812,7 +831,7 @@
if self._options.use_debug:
proc += ["-debug"]
- proc += ["-logdir", self.log_dir]
+ proc += ["-logdir", _Cygpath(self.log_dir)]
proc += ["-batch", "-quiet", "-no_results_to_stderr"]
proc += ["-callstack_max_frames", "40"]
@@ -840,6 +859,7 @@
proc = []
# Note that self._args begins with the name of the exe to be run.
+ self._args[0] = _Cygpath(self._args[0])
proc += self._args
return proc
« tools/valgrind/chrome_tests.sh ('K') | « tools/valgrind/chrome_tests.sh ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698