More context clean up in multi-threading tests
Bug: angleproject:349994211
Change-Id: I156906254a05bec4d8c517c3526e1ff2b299914d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7081067
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
diff --git a/src/tests/gl_tests/MultithreadingTest.cpp b/src/tests/gl_tests/MultithreadingTest.cpp
index c7260bd..7d28662 100644
--- a/src/tests/gl_tests/MultithreadingTest.cpp
+++ b/src/tests/gl_tests/MultithreadingTest.cpp
@@ -286,6 +286,9 @@
EXPECT_EGL_TRUE(eglDestroyContext(dpy, ctx2));
EXPECT_EGL_TRUE(eglDestroyContext(dpy, ctx1));
+
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
}
});
@@ -329,6 +332,9 @@
glDrawArrays(GL_TRIANGLES, 0, 6);
}
}
+
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
});
t1.join();
@@ -828,6 +834,9 @@
}
eglDestroyContext(dpy, ctx);
+
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
});
std::thread consumerThread([&]() {
@@ -896,6 +905,9 @@
}
}
eglDestroyContext(dpy, ctx);
+
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
});
producerThread.join();
@@ -1228,6 +1240,9 @@
threadSynchronization.nextStep(Step::Thread0ClientWaitSync);
ASSERT_EQ(EGL_CONDITION_SATISFIED_KHR, eglClientWaitSyncKHR(dpy, sync, 0, kTimeout));
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
+
ASSERT_TRUE(threadSynchronization.waitForStep(Step::Finish));
};
@@ -3222,6 +3237,9 @@
// Destroy the context.
EXPECT_EGL_TRUE(eglDestroyContext(dpy, ctx1));
+
+ // Clean up
+ EXPECT_EGL_TRUE(eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT));
});
thread.join();