diff options
Diffstat (limited to 'Source/Core/VideoBackends/OGL/StreamBuffer.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/OGL/StreamBuffer.cpp | 7 |
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) |
