Commit 957a2359 by Jamie Madill Committed by Commit Bot

Skip VulkanBarriersPerfBenchmark on NV/Win.

This test is failing because our out-of-date Windows 7 NV bots can't create a GLES 3.0 context. Skip this test until the machines are updated. Also updates our wrapper classes to check for an empty handle before calling delete. Prevents a crash trying to call null functions. Bug: chromium:1090139 Change-Id: I0bb58f8bd167691cd241fb0df30cdf4b2f6adf5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225447 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent aab54fd0
...@@ -139,7 +139,13 @@ VulkanBarriersPerfBenchmark::VulkanBarriersPerfBenchmark() ...@@ -139,7 +139,13 @@ VulkanBarriersPerfBenchmark::VulkanBarriersPerfBenchmark()
mPositionLoc(-1), mPositionLoc(-1),
mTexCoordLoc(-1), mTexCoordLoc(-1),
mSamplerLoc(-1) mSamplerLoc(-1)
{} {
// Skip this test on our outdated perf bots. http://crbug.com/1090139
if (IsNVIDIA() && IsWindows())
{
mSkipTest = true;
}
}
constexpr char kVS[] = R"(attribute vec4 a_position; constexpr char kVS[] = R"(attribute vec4 a_position;
attribute vec2 a_texCoord; attribute vec2 a_texCoord;
......
...@@ -26,7 +26,13 @@ class GLWrapper : angle::NonCopyable ...@@ -26,7 +26,13 @@ class GLWrapper : angle::NonCopyable
{ {
public: public:
GLWrapper(GLGen *genFunc, GLDelete *deleteFunc) : mGenFunc(genFunc), mDeleteFunc(deleteFunc) {} GLWrapper(GLGen *genFunc, GLDelete *deleteFunc) : mGenFunc(genFunc), mDeleteFunc(deleteFunc) {}
~GLWrapper() { (*mDeleteFunc)(1, &mHandle); } ~GLWrapper()
{
if (mHandle)
{
(*mDeleteFunc)(1, &mHandle);
}
}
// The move-constructor and move-assignment operators are necessary so that the data within a // The move-constructor and move-assignment operators are necessary so that the data within a
// GLWrapper object can be relocated. // GLWrapper object can be relocated.
...@@ -150,7 +156,13 @@ class GLProgram ...@@ -150,7 +156,13 @@ class GLProgram
public: public:
GLProgram() : mHandle(0) {} GLProgram() : mHandle(0) {}
~GLProgram() { glDeleteProgram(mHandle); } ~GLProgram()
{
if (mHandle)
{
glDeleteProgram(mHandle);
}
}
void makeEmpty() { mHandle = glCreateProgram(); } void makeEmpty() { mHandle = glCreateProgram(); }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment