summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
diff options
context:
space:
mode:
authorSonicadvance1 <Sonicadvance1@gmail.com>2014-09-04 18:03:53 -0500
committerSonicadvance1 <Sonicadvance1@gmail.com>2014-09-04 19:03:49 -0500
commite32b2e17711939475c19771edeb619721362eb0a (patch)
treebb1e0c6dfba47e4923eb68976b65c7135d879ccc /Source/Core/VideoBackends/OGL/StreamBuffer.cpp
parentf9650c52f8f6dcf5bdb78b9e114a100bf83c19b1 (diff)
Work around Intel's failings with with buffer_storage
Diffstat (limited to 'Source/Core/VideoBackends/OGL/StreamBuffer.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/StreamBuffer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/OGL/StreamBuffer.cpp b/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
index 91d4692b08..5406b6e14c 100644
--- a/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
+++ b/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
@@ -378,7 +378,8 @@ StreamBuffer* StreamBuffer::Create(u32 type, u32 size)
// buffer storage works well in most situations
if (g_ogl_config.bSupportsGLBufferStorage &&
- !(DriverDetails::HasBug(DriverDetails::BUG_BROKENBUFFERSTORAGE) && type == GL_ARRAY_BUFFER))
+ !(DriverDetails::HasBug(DriverDetails::BUG_BROKENBUFFERSTORAGE) && type == GL_ARRAY_BUFFER) &&
+ !(DriverDetails::HasBug(DriverDetails::BUG_INTELBROKENBUFFERSTORAGE) && type == GL_ELEMENT_ARRAY_BUFFER))
return new BufferStorage(type, size);
// don't fall back to MapAnd* for nvidia drivers