Use the D3D11 adapter LUID for our adapter identifier check in ProgramBinary.

TRAC #22498

Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1852 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/Renderer11.cpp b/src/libGLESv2/renderer/Renderer11.cpp
index f9369d5..d43a7be 100644
--- a/src/libGLESv2/renderer/Renderer11.cpp
+++ b/src/libGLESv2/renderer/Renderer11.cpp
@@ -1837,10 +1837,12 @@
 
 GUID Renderer11::getAdapterIdentifier() const
 {
-    // TODO
-    // UNIMPLEMENTED();
-    GUID foo = {0};
-    return foo;
+    // Use the adapter LUID as our adapter ID
+    // This number is local to a machine is only guaranteed to be unique between restarts
+    META_ASSERT(sizeof(LUID) <= sizeof(GUID));
+    GUID adapterId = {0};
+    memcpy(&adapterId, &mAdapterDescription.AdapterLuid, sizeof(LUID));
+    return adapterId;
 }
 
 bool Renderer11::getBGRATextureSupport() const