Continued SurfaceView lifetime fixes.

More errors in the positionLost refactoring, it turns out positionLost
can be called after we are fully detached and so ViewRootImpl can be null
(which it can't be anywhere else in the SurfaceView code). Guard against this
and guard against ViewRoot.mSurface being released since it seems this intermediate
state would also be possible.

Bug: 141474834
Test: Manual
Change-Id: Id34e667bf319deb6e8b26346225b604a54dc342c
1 file changed