Clean up RemoteCallbackList when we're done with it.

When dispatching cancel callbacks for a pending intent,
AMS drops its reference to the list without cleaning it up.
This means that the enclosed callbacks (proxies) will stay
alive until the remote process dies. For some processes like
systemUI, this will happen rarely (if ever), and so sooner
or later we would run into proxy resource limits for such
processes.

Since at this point we're done with the RemoteCallbackList,
just clear it out.

Bug: 109701487
Test: builds, boots, callback list is cleaned out
Change-Id: Ia1a108045fb1fd12cbd94a7c516a9eab8ebca099
1 file changed