summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
diff options
context:
space:
mode:
authorStenzek <stenzek@users.noreply.github.com>2018-02-27 17:54:41 +1000
committerGitHub <noreply@github.com>2018-02-27 17:54:41 +1000
commit25a516bae3ac6a544437969004ce141177223331 (patch)
tree6c2f3ea59eb04352ff120046da92ae32b479569c /Source/Core/VideoBackends/OGL/StreamBuffer.cpp
parenta1e31d600304a5848d55e2b0c6ef6d9eef6bfc36 (diff)
parent227db66e4f478586416e7cdf54d411112c116461 (diff)
Merge pull request #6403 from degasus/master
OGL: Use glBufferData on Mali.
Diffstat (limited to 'Source/Core/VideoBackends/OGL/StreamBuffer.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/StreamBuffer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/OGL/StreamBuffer.cpp b/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
index 366aa42965..eb7fc0a619 100644
--- a/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
+++ b/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
@@ -376,7 +376,12 @@ std::unique_ptr<StreamBuffer> StreamBuffer::Create(u32 type, u32 size)
// don't fall back to MapAnd* for Nvidia drivers
if (DriverDetails::HasBug(DriverDetails::BUG_BROKEN_UNSYNC_MAPPING))
- return std::make_unique<BufferSubData>(type, size);
+ {
+ if (DriverDetails::HasBug(DriverDetails::BUG_BROKEN_BUFFER_STREAM))
+ return std::make_unique<BufferData>(type, size);
+ else
+ return std::make_unique<BufferSubData>(type, size);
+ }
// mapping fallback
if (g_ogl_config.bSupportsGLSync)