summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/Render.cpp
diff options
context:
space:
mode:
authorshuffle2 <godisgovernment@gmail.com>2014-09-05 11:06:49 -0700
committershuffle2 <godisgovernment@gmail.com>2014-09-05 11:06:49 -0700
commit0576046fdd6bccc61b30174f04207b5191280f6f (patch)
treea9a588695fd36fea774842d2d2f890c8636bdfdf /Source/Core/VideoBackends/OGL/Render.cpp
parentbb60cafd4071b33802f9d92fdcd2ca2d3f267209 (diff)
parente32b2e17711939475c19771edeb619721362eb0a (diff)
Merge pull request #972 from Sonicadvance1/fix-intel-windows
Work around Intel's failings with buffer_storage
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/Render.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp
index f234d7f242..dd64a42165 100644
--- a/Source/Core/VideoBackends/OGL/Render.cpp
+++ b/Source/Core/VideoBackends/OGL/Render.cpp
@@ -315,17 +315,22 @@ static void InitDriverInfo()
version = 100*major + 10*minor + release;
}
break;
- case DriverDetails::VENDOR_INTEL: // Happens in OS X
+ case DriverDetails::VENDOR_INTEL: // Happens in OS X/Windows
+ {
sscanf(g_ogl_config.gl_renderer, "Intel HD Graphics %d", &family);
- /*
+#ifdef _WIN32
int glmajor = 0;
int glminor = 0;
int major = 0;
int minor = 0;
int release = 0;
- sscanf(g_ogl_config.gl_version, "%d.%d INTEL-%d.%d.%d", &glmajor, &glminor, &major, &minor, &release);
- version = 10000*major + 1000*minor + release;
- */
+ int revision = 0;
+ // Example version string: '4.3.0 - Build 10.18.10.3907'
+ sscanf(g_ogl_config.gl_version, "%d.%d.0 - Build %d.%d.%d.%d", &glmajor, &glminor, &major, &minor, &release, &revision);
+ version = 100000000 * major + 1000000 * minor + 10000 * release + revision;
+ version /= 10000;
+#endif
+ }
break;
case DriverDetails::VENDOR_NVIDIA:
{