Improve stability of battery stats history unparceling

If the battery history file is corrupted, the unparceling
code may call `parcel.setDataPosition` with an invalid
argument. This leads to an irrecoverable native crash
and process kill.  To avoid such a situation, we will be
checking the argument for validity before calling setDataPosition

Bug: 337977337
Test: atest FrameworksCoreTests:PowerStatsTest
Change-Id: Id4f1d7c27973eb975c0e7f87dc79491dc1b73101
2 files changed