summaryrefslogtreecommitdiff
path: root/libs/androidfw/ApkParsing.cpp
diff options
context:
space:
mode:
author Lee Shombert <shombert@google.com> 2024-10-22 09:47:19 -0700
committer Lee Shombert <shombert@google.com> 2024-10-22 14:50:20 -0700
commit1739413aad881dc4d6473ae7a5f9363b7b83ab22 (patch)
treee02e513d7a120fa120589b51f9421959287b540a /libs/androidfw/ApkParsing.cpp
parentdbea722f1e388bae5976c6a5eca0508044cbf194 (diff)
Finalize BulkCursorNative asynchronously
BulkNativeCursor should be closed explicitly but when it is not, it is closed by the finalizer. If the remote process is busy, this can trigger a TimeoutException from the FinalizerWatchdogDaemon. The solution is to make the remote call asynchronous, if the current thread is the finalizer. This is a best-effort mitigation, for clients that fail to explicitly close BulkNativeCursor instances. Tested with an instrumented build that leaked a BulkNativeCursor and waited for the finalizer to clean up the instance. Verified that the remote call was one-way. Flag: android.database.sqlite.oneway_finalizer_close Bug: 368221351 Test: atest * FrameworksCoreTests:android.database * CtsDatabaseTestCases Change-Id: I39b1a4b4465b4b9d66c73c80db0455b1352c7862
Diffstat (limited to 'libs/androidfw/ApkParsing.cpp')
0 files changed, 0 insertions, 0 deletions