diff options
author | Jamie Madill <jmadill@chromium.org> | 2014-07-23 16:43:22 -0400 |
---|---|---|
committer | Jamie Madill <jmadill@chromium.org> | 2014-07-24 17:58:40 +0000 |
commit | cafa2102cdcfec9b8e80fb031735c59a8d98da7a (patch) | |
tree | d9a56feff30a795134b9414e9abc641b1e61a531 /src | |
parent | 5063f55a823348ef6ac774a10e12f410c98af7c8 (diff) | |
download | angle-cafa2102cdcfec9b8e80fb031735c59a8d98da7a.tar.gz |
Fix Clang warnings.
MSVC's more permissing validator missed a dependent typename, and
deleting a void pointer.
BUG=angle:703,704
Change-Id: I227b94c9c1590973d7b11b0ed0bfda32f2a71cec
Reviewed-on: https://chromium-review.googlesource.com/209613
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/libGLESv2/ProgramBinary.cpp | 6 | ||||
-rw-r--r-- | src/libGLESv2/renderer/ShaderExecutable.h | 22 | ||||
-rw-r--r-- | src/libGLESv2/renderer/d3d/d3d11/RenderStateCache.cpp | 2 |
3 files changed, 13 insertions, 17 deletions
diff --git a/src/libGLESv2/ProgramBinary.cpp b/src/libGLESv2/ProgramBinary.cpp index 3753a221..38a66041 100644 --- a/src/libGLESv2/ProgramBinary.cpp +++ b/src/libGLESv2/ProgramBinary.cpp @@ -1497,7 +1497,7 @@ bool ProgramBinary::save(void* binary, GLsizei bufSize, GLsizei *length) size_t vertexShaderSize = vertexExecutable->shaderExecutable()->getLength(); stream.writeInt(vertexShaderSize); - unsigned char *vertexBlob = static_cast<unsigned char *>(vertexExecutable->shaderExecutable()->getFunction()); + const uint8_t *vertexBlob = vertexExecutable->shaderExecutable()->getFunction(); stream.writeBytes(vertexBlob, vertexShaderSize); } @@ -1530,7 +1530,7 @@ bool ProgramBinary::save(void* binary, GLsizei bufSize, GLsizei *length) size_t pixelShaderSize = pixelExecutable->shaderExecutable()->getLength(); stream.writeInt(pixelShaderSize); - unsigned char *pixelBlob = static_cast<unsigned char *>(pixelExecutable->shaderExecutable()->getFunction()); + const uint8_t *pixelBlob = pixelExecutable->shaderExecutable()->getFunction(); stream.writeBytes(pixelBlob, pixelShaderSize); } @@ -1539,7 +1539,7 @@ bool ProgramBinary::save(void* binary, GLsizei bufSize, GLsizei *length) if (mGeometryExecutable != NULL && geometryShaderSize > 0) { - unsigned char *geometryBlob = static_cast<unsigned char *>(mGeometryExecutable->getFunction()); + const uint8_t *geometryBlob = mGeometryExecutable->getFunction(); stream.writeBytes(geometryBlob, geometryShaderSize); } diff --git a/src/libGLESv2/renderer/ShaderExecutable.h b/src/libGLESv2/renderer/ShaderExecutable.h index 5e229d7d..054d00a7 100644 --- a/src/libGLESv2/renderer/ShaderExecutable.h +++ b/src/libGLESv2/renderer/ShaderExecutable.h @@ -19,32 +19,28 @@ namespace rx class ShaderExecutable { public: - ShaderExecutable(const void *function, size_t length) : mLength(length) + ShaderExecutable(const void *function, size_t length) + : mFunctionBuffer(length) { - mFunction = new char[length]; - memcpy(mFunction, function, length); - } - - virtual ~ShaderExecutable() - { - delete[] mFunction; + memcpy(mFunctionBuffer.data(), function, length); } - void *getFunction() const + virtual ~ShaderExecutable() {} + + const uint8_t *getFunction() const { - return mFunction; + return mFunctionBuffer.data(); } size_t getLength() const { - return mLength; + return mFunctionBuffer.size(); } private: DISALLOW_COPY_AND_ASSIGN(ShaderExecutable); - void *mFunction; - const size_t mLength; + std::vector<uint8_t> mFunctionBuffer; }; class UniformStorage diff --git a/src/libGLESv2/renderer/d3d/d3d11/RenderStateCache.cpp b/src/libGLESv2/renderer/d3d/d3d11/RenderStateCache.cpp index 78a7357b..b185d976 100644 --- a/src/libGLESv2/renderer/d3d/d3d11/RenderStateCache.cpp +++ b/src/libGLESv2/renderer/d3d/d3d11/RenderStateCache.cpp @@ -23,7 +23,7 @@ namespace rx template <typename mapType> static void ClearStateMap(mapType &map) { - for (mapType::iterator i = map.begin(); i != map.end(); i++) + for (typename mapType::iterator i = map.begin(); i != map.end(); i++) { SafeRelease(i->second.first); } |