diff options
| -rw-r--r-- | runtime/class_loader_context_test.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/runtime/class_loader_context_test.cc b/runtime/class_loader_context_test.cc index 930160f2b4b..ddbb73b5b24 100644 --- a/runtime/class_loader_context_test.cc +++ b/runtime/class_loader_context_test.cc @@ -338,10 +338,13 @@ TEST_F(ClassLoaderContextTest, OpenValidDexFilesSymLink) { } static std::string CreateRelativeString(const std::string& in, const char* cwd) { - if (!android::base::StartsWith(in, cwd)) { + int cwd_len = strlen(cwd); + if (!android::base::StartsWith(in, cwd) || (cwd_len < 1)) { LOG(FATAL) << in << " " << cwd; } - return in.substr(strlen(cwd) + 1); + bool contains_trailing_slash = (cwd[cwd_len - 1] == '/'); + int start_position = cwd_len + (contains_trailing_slash ? 0 : 1); + return in.substr(start_position); } TEST_F(ClassLoaderContextTest, OpenValidDexFilesRelative) { |
