Fix casting a pointer to an integer safely. Only casting from an integer (any size) to a pointer using reinterpret_cast<> is well-defined. Casting a pointer to an integer needs a large enough integer. Bug 29894961 Change-Id: I51cf6923f4feeaf1860ca0565aa7d40b61918e67 Reviewed-on: https://swiftshader-review.googlesource.com/5750 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libEGL/libEGL.cpp b/src/OpenGL/libEGL/libEGL.cpp index 297ef6c..9174558 100644 --- a/src/OpenGL/libEGL/libEGL.cpp +++ b/src/OpenGL/libEGL/libEGL.cpp
@@ -989,7 +989,7 @@ } #endif - GLuint name = reinterpret_cast<GLuint>(buffer); + GLuint name = static_cast<GLuint>(reinterpret_cast<uintptr_t>(buffer)); if(name == 0) {