I appear to have found a bug in the Adreno 200 OpenGL driver which is used on the HTC Desire (among others). Specifically, if you're using a 32-bit config, and you call glReadPixels(), it crashes.
I've got a bug containing a test case here: http://code.google.com/p/android/issues/detail?id=10825 I've tried this on two different kinds of device with the same OpenGL driver and it dies reliably on both --- but on a third device with a different driver it succeeds. It's interesting to note that the Khronos OpenGLES conformance tests use glReadPixels() a lot to check that the tests drew the right thing on the screen; which suggests that this driver never managed to pass the conformance tests in the first place... -- ┌─── dg@cowlark.com ───── http://www.cowlark.com ───── │ │ life←{ ↑1 ⍵∨.^3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵ } │ --- Conway's Game Of Life, in one line of APL
signature.asc
Description: OpenPGP digital signature