From a308a327884920cbb1e3e62964c4b5a01c29af8c Mon Sep 17 00:00:00 2001 From: Calin Juravle Date: Tue, 18 Jul 2017 16:51:51 -0700 Subject: Change kMultiDexSeparator from ':' to '!' The ':' separator is commonly used to separate class path elements. That means that we cannot easily encode multidex location in a classpath without complicating the parsing logic unnecessarily (e.g. when encoding classpaths in the oat file). For easy parsing and understanding kMultiDexSeparator and kClassPathSeparator should have different values. ':' is a wide spread classpath separator so this CL changes the value of kMultiDexSeparator to '!' which is also commonly used to denote an object inside a given container. Test: m test-art-host Bug: 38138251 Change-Id: I30995c553d9131478c6c071b27327df6d2de06a7 --- runtime/native/java_lang_VMClassLoader.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/native/java_lang_VMClassLoader.cc') diff --git a/runtime/native/java_lang_VMClassLoader.cc b/runtime/native/java_lang_VMClassLoader.cc index fc50d5584d..57c313e933 100644 --- a/runtime/native/java_lang_VMClassLoader.cc +++ b/runtime/native/java_lang_VMClassLoader.cc @@ -135,7 +135,7 @@ static jobjectArray VMClassLoader_getBootClassPathEntries(JNIEnv* env, jclass) { for (size_t i = 0; i < path.size(); ++i) { const DexFile* dex_file = path[i]; - // For multidex locations, e.g., x.jar:classes2.dex, we want to look into x.jar. + // For multidex locations, e.g., x.jar!classes2.dex, we want to look into x.jar. const std::string& location(dex_file->GetBaseLocation()); ScopedLocalRef javaPath(env, env->NewStringUTF(location.c_str())); -- cgit v1.2.3-59-g8ed1b