aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.trace
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@ericsson.com>2016-02-16 09:00:50 -0500
committerSimon Marchi <simon.marchi@ericsson.com>2016-02-16 09:01:38 -0500
commit266b65b33e23c916e5e698d24c37f65d90645a19 (patch)
treedf74af17b50ad4ed32b8f78adf2bc1d24e20b3a9 /gdb/testsuite/gdb.trace
parent1cd17042aad6b0c2e10537bb400a496958178029 (diff)
downloadfsf-binutils-gdb-266b65b33e23c916e5e698d24c37f65d90645a19.zip
fsf-binutils-gdb-266b65b33e23c916e5e698d24c37f65d90645a19.tar.gz
fsf-binutils-gdb-266b65b33e23c916e5e698d24c37f65d90645a19.tar.bz2
testsuite: Fix save-trace.exp writing outside standard output directory
In save-trace.exp, we want to test loading of a tracepoint definition file with a relative path (I am not sure why in fact). We currently use "savetrace-relative.tr", which ends up directly in testsuite/. If we use [standard_output_file] on that path, it becomes absolute. I decided to just replace [pwd] with . (a dot) in the path given by standard_output_file to make it relative. However, this trick only works because [pwd] is a prefix of the standard output directory. So I added a check to verify that precondition. gdb/testsuite/ChangeLog: * gdb.trace/save-trace.exp: Change relative path to be in the standard output directory.
Diffstat (limited to 'gdb/testsuite/gdb.trace')
-rw-r--r--gdb/testsuite/gdb.trace/save-trace.exp13
1 files changed, 12 insertions, 1 deletions
diff --git a/gdb/testsuite/gdb.trace/save-trace.exp b/gdb/testsuite/gdb.trace/save-trace.exp
index 7c897bb..a70ad54 100644
--- a/gdb/testsuite/gdb.trace/save-trace.exp
+++ b/gdb/testsuite/gdb.trace/save-trace.exp
@@ -151,7 +151,18 @@ proc do_save_load_test { save_path } {
gdb_verify_tracepoints "verify trace setup"
with_test_prefix "relative" {
- do_save_load_test "savetrace-relative.tr"
+ set filepath [standard_output_file "savetrace-relative.tr"]
+
+ # This only works because the pwd is a prefix of the standard output
+ # directory. If this assumption becomes false, then this test needs to be
+ # changed (the relative path from [pwd] to the standard output directory
+ # will become a bit more complicated to compute).
+ if {[string first [pwd] $filepath] != 0} {
+ error "[pwd] is not a prefix of $filepath."
+ }
+
+ set filepath [string map "[pwd] ." $filepath]
+ do_save_load_test "$filepath"
}
with_test_prefix "absolute" {