A hard to track bug occurs when using the torch:
The local variable surfaceTexture gets collected by GC causing it
to free the underlying buffer.
The next access to this buffer crashes with an SIGSEGV after an
assertion failure (BufferQueue already abandoned)
NOTE: The native camera object may possibly hold that reference so
it does not get GC'ed
Change-Id: Ib39d55ffb379ed16a0b94915c1b727e8ddc7f180