testsuite: do not overrid paths inside build

If we are accessing a file inside the build directory we should really
not trap the path. Right now this isn't important because we never do
such accesses. However it will be needed when gcov is integrated because
it dumps files to the same place where the binaries are located.
This commit is contained in:
Lucas De Marchi 2015-01-07 19:14:20 -02:00
parent 84aaaedfa6
commit 8ff7f008cd
2 changed files with 6 additions and 1 deletions

View File

@ -241,6 +241,8 @@ check-am: rootfs check-sysconfdir
check_LTLIBRARIES = $(TESTSUITE_OVERRIDE_LIBS)
testsuite_uname_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)
testsuite_path_la_CPPFLAGS = $(AM_CPPFLAGS) \
-DABS_TOP_BUILDDIR=\"$(abs_top_builddir)\"
testsuite_path_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)
testsuite_delete_module_la_LDFLAGS = $(TESTSUITE_OVERRIDE_LIBS_LDFLAGS)

View File

@ -29,6 +29,8 @@
#include <sys/stat.h>
#include <sys/types.h>
#include <shared/util.h>
#include "testsuite.h"
static void *nextlib;
@ -37,7 +39,8 @@ static size_t rootpathlen;
static inline bool need_trap(const char *path)
{
return path != NULL && path[0] == '/';
return path != NULL && path[0] == '/'
&& !strstartswith(path, ABS_TOP_BUILDDIR);
}
static const char *trap_path(const char *path, char buf[PATH_MAX * 2])