Closing cursor in finalizer to avoid GREF and fd leak in acore
The finalize() call did not clean up completely, this eventually caused the android.process.acore to crash since it ran out of fds and GREF to increased above 2000 if an application forgot to close its cursor objects. A warning was also added when this happens so that application developers can correct their mistake. The included test case tries to verify that the finalizer works as expected by creating a bunch of Cursor objects without closing them (without this fix the acore process crashes after about 400 iterations and the test case ends with "Process crashed"). Change-Id: I11e485cef1ac02e718b2742108aa88793666c31d
Loading
Please register or sign in to comment