mirror of
https://github.com/LibreELEC/LibreELEC.tv
synced 2025-09-24 19:46:01 +07:00
23 lines
879 B
Diff
23 lines
879 B
Diff
diff --git a/src/mesa/state_tracker/st_cb_bufferobjects.c b/src/mesa/state_tracker/st_cb_bufferobjects.c
|
|
index 55f3644..d68e1e9 100644
|
|
--- a/src/mesa/state_tracker/st_cb_bufferobjects.c
|
|
+++ b/src/mesa/state_tracker/st_cb_bufferobjects.c
|
|
@@ -256,8 +256,15 @@ st_bufferobj_data(struct gl_context *ctx,
|
|
break;
|
|
case GL_STREAM_DRAW:
|
|
case GL_STREAM_COPY:
|
|
- pipe_usage = PIPE_USAGE_STREAM;
|
|
- break;
|
|
+ /* XXX: Remove this test when we have PBO unpack acceleration. Right
|
|
+ * now, PBO unpacking is done by the CPU, so we have to make sure
|
|
+ * CPU reads are fast.
|
|
+ */
|
|
+ if (target != GL_PIXEL_UNPACK_BUFFER_ARB) {
|
|
+ pipe_usage = PIPE_USAGE_STREAM;
|
|
+ break;
|
|
+ }
|
|
+ /* fall through */
|
|
case GL_STATIC_READ:
|
|
case GL_DYNAMIC_READ:
|
|
case GL_STREAM_READ:
|