Fix a getcwd(3) bug and make our tests run correctly under valgrind.

The getcwd(3) bug was found by valgrind.

Bug: 7291287
Change-Id: I59f3bff1c1392a408b905934eebcd5d894d37492
diff --git a/tests/dlopen_test.cpp b/tests/dlopen_test.cpp
index c41c5e6..2fcfa0c 100644
--- a/tests/dlopen_test.cpp
+++ b/tests/dlopen_test.cpp
@@ -88,7 +88,7 @@
     uintptr_t start = strtoul(line, 0, 16);
     line[strlen(line) - 1] = '\0'; // Chomp the '\n'.
     char* path = strchr(line, '/');
-    if (strcmp(executable_path, path) == 0) {
+    if (path != NULL && strcmp(executable_path, path) == 0) {
       base_address = reinterpret_cast<void*>(start);
       break;
     }