Some devices only support a single active EGL context.
On those devices, when a second activity that uses a GLSurfaceView
is started in the same process, the second activity can potentially
hang in GLSurfaceView.onWindowResize waiting for its GLSurfaceView
render thread to draw a frame. The second activity's render thread
is waiting to acquire an EGL context, but the first activity's render
thread doesn't know it should release the EGL context.
The fix is to detect the potential hang, and ask the first activity's
render thread to release the EGL context.
Change-Id: Ibb342c68772297744c973bcf5010581cd132db67
Merge commit '5219a82f9d64a7d13401dcf9a0703a0ca2cd842d'
* commit '5219a82f9d64a7d13401dcf9a0703a0ca2cd842d':
Fix a bug that prevented the creation of EGL shared contexts.
Merge commit '8ecfb60a8e74dfcd51bbf3f236d5f414a4d5ac7d' into gingerbread-plus-aosp
* commit '8ecfb60a8e74dfcd51bbf3f236d5f414a4d5ac7d':
Fix a bug that prevented the creation of EGL shared contexts.
Merge commit 'c6e1d88022db800773401c16803e1ab27fd01a7e' into gingerbread-plus-aosp
* commit 'c6e1d88022db800773401c16803e1ab27fd01a7e':
Introduce official public NativeWindow type.
Not yet hooked up to anything in the NDK, but requires renaming
the existing android_native_window_t type everywhere.
Change-Id: Iffee6ea39c93b8b34e20fb69e4d2c7c837e5ea2e
- Move PackageInfo out of ActivityThread, renaming to LoadedApk.
- Rename some of the other PacakgeInfo inner classes to better
represent what they are.
- Rename HistoryRecord to ActivityRecord.
- Introduce AppGlobals, to eventually let ActivityThread become
package scoped.
Change-Id: Ib714c54ceb3cdbb525dce3db9505f31042e88cf0
Merge commit 'cefb88587443323d147e687ff78eae9195eb584c'
* commit 'cefb88587443323d147e687ff78eae9195eb584c':
Added support for the GL_TEXTURE_EXTERNAL target
Merge commit '28333315c6f62b303de2ec0ac9e48158ed419f06' into gingerbread-plus-aosp
* commit '28333315c6f62b303de2ec0ac9e48158ed419f06':
Added support for the GL_TEXTURE_EXTERNAL target
the EGL specification states that this should be treated as though it was
an empty list terminated with EGL_NONE.
Change-Id: I294104370a86b5e5c34c7bcf15c5459eab464631
Merge commit 'fb234bbe5e7cbae42b4fc8f4ab353ba561599db2' into kraken
* commit 'fb234bbe5e7cbae42b4fc8f4ab353ba561599db2':
Notify user regarding invalid number during MO call.
Build software AGL library with correct get_tls() macro for ARMv7 based platforms
Fix glReadPixels() to verify that both x and y are non-negative.
We believe these errors happen when the window
manager has told surface flinger to close the
native window.
If this error happens while we are creating the
EGL surface we exit the render loop (and
therefore exit the render thread.)
If the error happens while swapping the surface
we ignore it.
In either situation, we expect that the
application is about to be shut down by the
window manager, so it should not be necessary
to try and recover from the error.