When disconnecting a surface, cancel don't queue the buffer
This isn't really right either, but avoids having an extra buffer that the consumer has to drain which it might not be expecting. To be correct, disconnecting a surface from a context should retain the current buffer and continue using it when reconnected. The buffer should only be canceled when the surface is destroyed. That will wait for a later change. Bug: 8320762 Change-Id: I5efa39c741193ca4f5612ea9de001ccbb683b345
This commit is contained in:
parent
78141e3acc
commit
5f555569e7
|
@ -420,9 +420,8 @@ void egl_window_surface_v2_t::disconnect()
|
|||
bits = NULL;
|
||||
unlock(buffer);
|
||||
}
|
||||
// enqueue the last frame
|
||||
nativeWindow->queueBuffer(nativeWindow, buffer, -1);
|
||||
if (buffer) {
|
||||
nativeWindow->cancelBuffer(nativeWindow, buffer, -1);
|
||||
buffer->common.decRef(&buffer->common);
|
||||
buffer = 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue