diff options
author | Calin Juravle <calin@google.com> | 2014-10-22 21:02:23 +0100 |
---|---|---|
committer | Calin Juravle <calin@google.com> | 2014-10-27 15:18:28 +0000 |
commit | 2ff973cc395007ddbcf6b498c8de8880d77dd787 (patch) | |
tree | 6b6ec94c9b9978d3662151faa434a4e34b47bb82 /runtime/native_bridge_art_interface.cc | |
parent | 506794738de41db046a8094e04aa2a7c5a6e02db (diff) | |
download | art-2ff973cc395007ddbcf6b498c8de8880d77dd787.zip art-2ff973cc395007ddbcf6b498c8de8880d77dd787.tar.gz art-2ff973cc395007ddbcf6b498c8de8880d77dd787.tar.bz2 |
[native bridge] Make sure we always unload the native bridge
libnativebridge may allocate some resources during loading and
intialization and de-allocate them when unloading. This makes sure that
we don't leak anything.
Bug: 18097480
(cherry picked from commit 07d83c7a25022064ac0a8dac4fe2a7a38681fa4b)
Change-Id: I3a5155a6760399ccfaf9130c72679615a3d4f2e7
Diffstat (limited to 'runtime/native_bridge_art_interface.cc')
-rw-r--r-- | runtime/native_bridge_art_interface.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/runtime/native_bridge_art_interface.cc b/runtime/native_bridge_art_interface.cc index cc44615..28eebdd 100644 --- a/runtime/native_bridge_art_interface.cc +++ b/runtime/native_bridge_art_interface.cc @@ -107,10 +107,11 @@ static android::NativeBridgeRuntimeCallbacks native_bridge_art_callbacks_ { GetMethodShorty, GetNativeMethodCount, GetNativeMethods }; -void LoadNativeBridge(std::string& native_bridge_library_filename) { - android::LoadNativeBridge(native_bridge_library_filename.c_str(), &native_bridge_art_callbacks_); +bool LoadNativeBridge(std::string& native_bridge_library_filename) { VLOG(startup) << "Runtime::Setup native bridge library: " << (native_bridge_library_filename.empty() ? "(empty)" : native_bridge_library_filename); + return android::LoadNativeBridge(native_bridge_library_filename.c_str(), + &native_bridge_art_callbacks_); } void PreInitializeNativeBridge(std::string dir) { |