Load libart.so with RTLD_NODELETE
am: 6cf8e8d358
* commit '6cf8e8d3587a438c7117cce47330ac37ca9d6884':
Load libart.so with RTLD_NODELETE
Change-Id: I6d031b978cc4b3f7f2bb58f36696beacbd2537a2
diff --git a/JNIHelp.cpp b/JNIHelp.cpp
index 08b5fd2..54cb52f 100644
--- a/JNIHelp.cpp
+++ b/JNIHelp.cpp
@@ -38,7 +38,7 @@
template<typename T>
class scoped_local_ref {
public:
- scoped_local_ref(C_JNIEnv* env, T localRef = NULL)
+ explicit scoped_local_ref(C_JNIEnv* env, T localRef = NULL)
: mEnv(env), mLocalRef(localRef)
{
}
diff --git a/JniConstants.cpp b/JniConstants.cpp
index e95f980..43ad419 100644
--- a/JniConstants.cpp
+++ b/JniConstants.cpp
@@ -28,45 +28,28 @@
static std::atomic<bool> g_constants_initialized(false);
static std::mutex g_constants_mutex;
-jclass JniConstants::bigDecimalClass;
jclass JniConstants::booleanClass;
jclass JniConstants::byteArrayClass;
-jclass JniConstants::byteClass;
jclass JniConstants::calendarClass;
-jclass JniConstants::characterClass;
jclass JniConstants::charsetICUClass;
-jclass JniConstants::constructorClass;
-jclass JniConstants::deflaterClass;
jclass JniConstants::doubleClass;
jclass JniConstants::errnoExceptionClass;
-jclass JniConstants::fieldClass;
jclass JniConstants::fileDescriptorClass;
-jclass JniConstants::floatClass;
jclass JniConstants::gaiExceptionClass;
jclass JniConstants::inet6AddressClass;
jclass JniConstants::inetAddressClass;
jclass JniConstants::inetAddressHolderClass;
jclass JniConstants::inetSocketAddressClass;
jclass JniConstants::inetSocketAddressHolderClass;
-jclass JniConstants::inflaterClass;
-jclass JniConstants::inputStreamClass;
jclass JniConstants::integerClass;
jclass JniConstants::localeDataClass;
jclass JniConstants::longClass;
-jclass JniConstants::methodClass;
jclass JniConstants::mutableIntClass;
jclass JniConstants::mutableLongClass;
jclass JniConstants::netlinkSocketAddressClass;
-jclass JniConstants::objectClass;
-jclass JniConstants::objectArrayClass;
-jclass JniConstants::outputStreamClass;
jclass JniConstants::packetSocketAddressClass;
-jclass JniConstants::parsePositionClass;
jclass JniConstants::patternSyntaxExceptionClass;
jclass JniConstants::referenceClass;
-jclass JniConstants::shortClass;
-jclass JniConstants::socketClass;
-jclass JniConstants::socketImplClass;
jclass JniConstants::socketTaggerClass;
jclass JniConstants::stringClass;
jclass JniConstants::structAddrinfoClass;
@@ -108,19 +91,12 @@
return;
}
- bigDecimalClass = findClass(env, "java/math/BigDecimal");
booleanClass = findClass(env, "java/lang/Boolean");
- byteClass = findClass(env, "java/lang/Byte");
byteArrayClass = findClass(env, "[B");
calendarClass = findClass(env, "java/util/Calendar");
- characterClass = findClass(env, "java/lang/Character");
charsetICUClass = findClass(env, "java/nio/charset/CharsetICU");
- constructorClass = findClass(env, "java/lang/reflect/Constructor");
- floatClass = findClass(env, "java/lang/Float");
- deflaterClass = findClass(env, "java/util/zip/Deflater");
doubleClass = findClass(env, "java/lang/Double");
errnoExceptionClass = findClass(env, "android/system/ErrnoException");
- fieldClass = findClass(env, "java/lang/reflect/Field");
fileDescriptorClass = findClass(env, "java/io/FileDescriptor");
gaiExceptionClass = findClass(env, "android/system/GaiException");
inet6AddressClass = findClass(env, "java/net/Inet6Address");
@@ -128,26 +104,16 @@
inetAddressHolderClass = findClass(env, "java/net/InetAddress$InetAddressHolder");
inetSocketAddressClass = findClass(env, "java/net/InetSocketAddress");
inetSocketAddressHolderClass = findClass(env, "java/net/InetSocketAddress$InetSocketAddressHolder");
- inflaterClass = findClass(env, "java/util/zip/Inflater");
- inputStreamClass = findClass(env, "java/io/InputStream");
integerClass = findClass(env, "java/lang/Integer");
localeDataClass = findClass(env, "libcore/icu/LocaleData");
longClass = findClass(env, "java/lang/Long");
- methodClass = findClass(env, "java/lang/reflect/Method");
mutableIntClass = findClass(env, "android/util/MutableInt");
mutableLongClass = findClass(env, "android/util/MutableLong");
netlinkSocketAddressClass = findClass(env, "android/system/NetlinkSocketAddress");
- objectClass = findClass(env, "java/lang/Object");
- objectArrayClass = findClass(env, "[Ljava/lang/Object;");
- outputStreamClass = findClass(env, "java/io/OutputStream");
packetSocketAddressClass = findClass(env, "android/system/PacketSocketAddress");
- parsePositionClass = findClass(env, "java/text/ParsePosition");
patternSyntaxExceptionClass = findClass(env, "java/util/regex/PatternSyntaxException");
referenceClass = findClass(env, "java/lang/ref/Reference");
- shortClass = findClass(env, "java/lang/Short");
- socketClass = findClass(env, "java/net/Socket");
socketTaggerClass = findClass(env, "dalvik/system/SocketTagger");
- socketImplClass = findClass(env, "java/net/SocketImpl");
stringClass = findClass(env, "java/lang/String");
structAddrinfoClass = findClass(env, "android/system/StructAddrinfo");
structFlockClass = findClass(env, "android/system/StructFlock");
diff --git a/include/nativehelper/JniConstants.h b/include/nativehelper/JniConstants.h
index ba8f8cb..af9e70a 100644
--- a/include/nativehelper/JniConstants.h
+++ b/include/nativehelper/JniConstants.h
@@ -39,45 +39,28 @@
struct JniConstants {
static void init(JNIEnv* env);
- static jclass bigDecimalClass;
static jclass booleanClass;
static jclass byteArrayClass;
- static jclass byteClass;
static jclass calendarClass;
- static jclass characterClass;
static jclass charsetICUClass;
- static jclass constructorClass;
- static jclass deflaterClass;
static jclass doubleClass;
static jclass errnoExceptionClass;
- static jclass fieldClass;
static jclass fileDescriptorClass;
- static jclass floatClass;
static jclass gaiExceptionClass;
static jclass inet6AddressClass;
static jclass inetAddressClass;
static jclass inetAddressHolderClass;
static jclass inetSocketAddressClass;
static jclass inetSocketAddressHolderClass;
- static jclass inflaterClass;
- static jclass inputStreamClass;
static jclass integerClass;
static jclass localeDataClass;
static jclass longClass;
- static jclass methodClass;
static jclass mutableIntClass;
static jclass mutableLongClass;
static jclass netlinkSocketAddressClass;
- static jclass objectClass;
- static jclass objectArrayClass;
- static jclass outputStreamClass;
static jclass packetSocketAddressClass;
- static jclass parsePositionClass;
static jclass patternSyntaxExceptionClass;
static jclass referenceClass;
- static jclass shortClass;
- static jclass socketClass;
- static jclass socketImplClass;
static jclass socketTaggerClass;
static jclass stringClass;
static jclass structAddrinfoClass;
diff --git a/toStringArray.cpp b/toStringArray.cpp
index f2fa53c..f2b0add 100644
--- a/toStringArray.cpp
+++ b/toStringArray.cpp
@@ -23,7 +23,7 @@
struct ArrayCounter {
const char* const* strings;
- ArrayCounter(const char* const* strings) : strings(strings) {}
+ explicit ArrayCounter(const char* const* strings) : strings(strings) {}
size_t operator()() {
size_t count = 0;
while (strings[count] != NULL) {
@@ -35,7 +35,7 @@
struct ArrayGetter {
const char* const* strings;
- ArrayGetter(const char* const* strings) : strings(strings) {}
+ explicit ArrayGetter(const char* const* strings) : strings(strings) {}
const char* operator()(size_t i) {
return strings[i];
}