summaryrefslogtreecommitdiffstats
path: root/tools/valgrind/valgrind_test.py
diff options
context:
space:
mode:
authordank@chromium.org <dank@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-26 22:33:05 +0000
committerdank@chromium.org <dank@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-26 22:33:05 +0000
commitac01d9228f3d4d7c78eac683c02ba5c494974b59 (patch)
tree78c42cfabb7ff43a42e260fbd149b744e1f9853c /tools/valgrind/valgrind_test.py
parent675595f2f4c6856cdc5190a01056e5aaeb77808f (diff)
downloadchromium_src-ac01d9228f3d4d7c78eac683c02ba5c494974b59.zip
chromium_src-ac01d9228f3d4d7c78eac683c02ba5c494974b59.tar.gz
chromium_src-ac01d9228f3d4d7c78eac683c02ba5c494974b59.tar.bz2
Fix gdb line number lookup on the mac.
1) need to quote filenames 2) need to know what address each library was loaded at 3) need to manually add symlink to chromium framework .dSYM file Review URL: http://codereview.chromium.org/174362 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24548 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/valgrind/valgrind_test.py')
-rwxr-xr-xtools/valgrind/valgrind_test.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/valgrind/valgrind_test.py b/tools/valgrind/valgrind_test.py
index 5160ffe..14d3076 100755
--- a/tools/valgrind/valgrind_test.py
+++ b/tools/valgrind/valgrind_test.py
@@ -181,6 +181,18 @@ class ValgrindTool(object):
shutil.copyfile(dsym_file, test_command)
shutil.copymode(saved_test_command, test_command)
+ # Make sure the Chromium Framework symbols are available.
+ # See message from mmentovai on aug 5
+ build_dir = os.path.dirname(test_command)
+ symlink_source = '../../../Chromium Framework.framework.dSYM'
+ symlink_target = build_dir + '/Chromium.app/Contents/Frameworks/Chromium Framework.framework.dSYM'
+ try:
+ os.remove(symlink_target)
+ except IOError, (errno, strerror):
+ pass
+ logging.info('Trying ln -s "%s" "%s"' % (symlink_source, symlink_target))
+ os.symlink(symlink_source, symlink_target)
+
if needs_dsymutil:
if self._options.generate_dsym:
# Remove the .dSYM bundle if it exists.
@@ -364,7 +376,7 @@ class Memcheck(ValgrindTool):
filenames = glob.glob(self.TMP_DIR + "/memcheck.*")
use_gdb = (sys.platform == 'darwin')
- analyzer = memcheck_analyze.MemcheckAnalyze(self._source_dir, filenames, self._options.show_all_leaks,
+ analyzer = memcheck_analyze.MemcheckAnalyze(self._source_dir, filenames, self._options.show_all_leaks,
use_gdb=use_gdb)
return analyzer.Report()