Fixing parcel leaks to avoid virtual memory leak

Client has to call recycle() on parcel object after its usage
otherwise native layer of binder won't clear the resources of
parcel which were allocated for IPC

Change-Id: Ib31ddcc92aa4ebd80bb66729922b9133692e9c9e
This commit is contained in:
Maunik Shah
2014-06-19 14:18:39 +05:30
parent ab9a19e38c
commit db1a9a3862
2 changed files with 4 additions and 1 deletions

View File

@ -1188,6 +1188,7 @@ class ApplicationThreadProxy implements IApplicationThread {
data.writeInt(level);
mRemote.transact(SCHEDULE_TRIM_MEMORY_TRANSACTION, data, null,
IBinder.FLAG_ONEWAY);
data.recycle();
}
public void dumpMemInfo(FileDescriptor fd, Debug.MemoryInfo mem, boolean checkin,

View File

@ -1709,7 +1709,9 @@ public class RemoteViews implements Parcelable, Filter {
Parcel p = Parcel.obtain();
writeToParcel(p, 0);
p.setDataPosition(0);
return new RemoteViews(p);
RemoteViews rv = new RemoteViews(p);
p.recycle();
return rv;
}
public String getPackage() {