There were many places where the native object was being accessed improperly. Also some places where CloseGuard might not be acquired or released correctly or where the generation count might not be updated. Fixed them all. That said, Surface isn't intended to be used concurrently so please don't do it. This is only intended to make hard to find crashes less likely. Bug: 8328715 Change-Id: I981ef33425823e0fd7ad6b64443f2ec9b0c8335e