No description
Find a file
Yong Li 489c3a8b35 Fix memory leak of DexFile handle after release
The DexFile handle is allocated from heap in OpenFromFd/OpenFromMemory.
After releasing the unique_ptr, the DexFile handle itself is no longer
managed by the smart pointer. However, the DexFile handle is not freed
in the constructor of DexFileFromFile/DexFileFromMemory.

This change uses get() method to get the DexFile pointer while allowing
it to be managed by smart pointer so that it can be freed after method
end.

Added new unit tests to detect leaks.

Bug: 151966190

Test: Unwinding can still retrieve dex frame information during crash.
Test: Ran new unit tests before change and verified they fail, ran them
Test: after the change and verified they don't fail.

Signed-off-by: Yong Li <yongl0722@gmail.com>
Change-Id: I0627e1e255eb6644aba51e940c1a79ff78d568d7
2020-03-20 16:46:11 -07:00
adb adbd: shrink libadbd.so, libadbd_services.so. 2020-03-16 11:30:09 -07:00
base base: dlopen/dlsym for liblog when SDK_VER <= 29 2020-03-18 17:42:41 +09:00
bootstat bootstat: enhance last reboot reason property with file backing 2020-02-14 13:24:16 -08:00
cli-test cli-test: a tool for testing command-line programs. 2019-12-13 12:23:51 -08:00
code_coverage build code_coverage.policy with Android.bp 2020-02-11 10:33:38 -08:00
cpio Switch from dist-for-goals to dist in Android.bp 2018-11-19 23:06:12 -08:00
debuggerd Merge "debuggerd: add an opt-out for OEMs that would rather collect core dumps." 2020-03-06 17:17:51 +00:00
deprecated-adf remove deprecated bp 'subdirs' 2020-01-14 12:18:40 -08:00
diagnose_usb Build adbd for recovery 2018-05-24 14:11:11 +09:00
fastboot Merge "fastboot: add support for v3 boot header format" 2020-03-19 05:47:48 +00:00
fs_mgr Merge "Add OptimizeSourceCopyOperation" 2020-03-12 20:44:24 +00:00
gatekeeperd Use optional for nullable types 2020-02-24 09:31:47 +09:00
healthd healthd: Don't take device-scoped battery as the main system battery. 2020-03-16 12:50:42 +09:00
include
init Merge "init: init_kill_services_test" 2020-03-17 20:30:49 +00:00
janitors Add the two best build system janitors. 2019-03-25 10:25:13 -07:00
libappfuse Close /dev/fuse FD before calling onClosed 2019-05-31 17:06:52 +01:00
libasyncio Revert "Mark libs as double_loadable" 2019-03-11 14:10:34 +00:00
libbacktrace Whole static link libasync_safe to libbacktrace.a 2020-03-11 07:55:23 +00:00
libbinderwrapper Make libbinderwrapper available in /vendor partition 2018-04-06 08:41:21 +09:00
libcrypto_utils Set apex_available property 2020-03-09 16:38:02 +09:00
libcutils run ext4 tools in first_stage_ramdisk 2020-03-11 09:33:51 -07:00
libdiskconfig
libgrallocusage Replace -Weverything with -Wextra 2019-11-08 13:09:00 -08:00
libkeyutils Refactor mini-keyctl and split a static library 2019-09-26 10:45:38 -07:00
liblog Merge changes Id67203bb,I0c1dd57f 2020-03-13 16:10:35 +00:00
libmodprobe libmodprobe: parse kernel command line for module options 2019-12-27 13:39:23 -08:00
libnetutils add nodad argument to ifc_act_on_address() and add it to header file 2020-01-26 06:35:30 -08:00
libpackagelistparser Add require_root to adbd_test and libpackagelistparser_test 2019-09-24 09:13:32 -07:00
libpixelflinger Remove mips pixelflinger. 2020-03-07 05:51:52 +00:00
libprocessgroup Convert vts configs to Android.bp 2020-03-07 21:21:33 -08:00
libprocinfo libprocinfo: remove error msg for unknown process state. 2020-01-17 15:55:13 -08:00
libqtaguid
libsparse Make ramdisk_available. 2020-01-22 16:47:14 -08:00
libstats don't include liblog to APEXes 2020-03-11 09:20:08 +00:00
libsuspend Remove libsuspend from VNDK. 2018-08-14 13:39:55 -07:00
libsync libsystem/libsync: Update OWNERS 2020-02-28 10:50:50 -08:00
libsystem Set apex_available property 2020-03-09 16:38:02 +09:00
libsysutils Allow apexes to link against more libs 2020-02-14 10:41:15 -08:00
libunwindstack Fix memory leak of DexFile handle after release 2020-03-20 16:46:11 -07:00
libusbhost Prevent infinite loop on zero length USB descriptors 2020-02-21 11:11:02 -08:00
libutils Set apex_available property 2020-03-09 16:38:02 +09:00
libvndksupport remove deprecated bp 'subdirs' 2020-01-14 12:18:40 -08:00
libziparchive Allow loading zip at an offset in fd 2020-03-18 20:46:50 +00:00
llkd Merge changes Ibb4b4ca4,I31572afa 2020-01-17 15:39:45 +00:00
logcat logcat: add 'device shut down' to error message upon EOF 2020-02-14 10:10:44 -08:00
logd logd: don't coalesce identical log messages in the security buffer 2020-02-20 13:21:51 -08:00
logwrapper logwrap: add missing O_CLOEXEC 2020-02-26 10:29:04 -08:00
property_service Rename ro.device_owner system property 2020-02-19 10:34:36 +00:00
qemu_pipe Build adbd for recovery 2018-05-24 14:11:11 +09:00
reboot adb: replace reboot service with exec of /system/bin/reboot. 2019-10-23 14:33:36 -07:00
rootdir init.rc: disable kernel module autoloading 2020-03-11 10:01:32 -07:00
run-as run-as: improve error messages. 2020-03-04 18:11:18 -08:00
sdcard Move layout_version to /data/misc/installd 2019-08-21 10:12:18 -07:00
set-verity-state set-verity-state: Link to libfs_mgr_binder. 2019-12-30 13:42:57 -08:00
shell_and_utilities Update shell_and_utilities docs for R. 2020-01-16 15:54:16 -08:00
storaged storaged: ignore SIGPIPE 2020-03-17 09:31:01 -07:00
toolbox toolbox: add modprobe 2019-08-06 13:58:13 -07:00
trusty trusty: keymaster: Remove legacy support 2020-02-26 00:43:23 +00:00
usbd Remove libhwbinder/libhidltransport deps 2019-09-05 14:17:42 -07:00
watchdogd Move watchdogd out of init 2018-08-02 12:25:58 -07:00
.clang-format
.clang-format-2 Move clang-formats to build. 2019-01-18 14:26:33 -08:00
.clang-format-4 Move clang-formats to build. 2019-01-18 14:26:33 -08:00
.gitignore
Android.bp remove deprecated bp 'subdirs' 2020-01-14 12:18:40 -08:00
CleanSpec.mk snapshotctl don't auto-merge. 2020-03-03 13:19:49 -08:00
MODULE_LICENSE_APACHE2
NOTICE
OWNERS Move per-file OWNERS directives to their directories. 2018-06-06 11:49:40 +09:00
PREUPLOAD.cfg
TEST_MAPPING init: init_kill_services_test 2020-03-17 10:58:02 -07:00