Fix glDeleteSync validation

glDeleteSync can only delete an existing FenceSync object.

Change-Id: Ieb78894175235cc97c67ff0324d59bb5d7619918
Reviewed-on: https://swiftshader-review.googlesource.com/13829
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/OpenGL/libGLESv2/libGLESv3.cpp b/src/OpenGL/libGLESv2/libGLESv3.cpp
index 7a939b2..ab34df5 100644
--- a/src/OpenGL/libGLESv2/libGLESv3.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv3.cpp
@@ -3053,10 +3053,20 @@
 {
 	TRACE("(GLsync sync = %p)", sync);
 
+	if(!sync)
+	{
+		return;
+	}
+
 	es2::Context *context = es2::getContext();
 
 	if(context)
 	{
+		if(!context->getFenceSync(sync))
+		{
+			return error(GL_INVALID_VALUE);
+		}
+
 		context->deleteFenceSync(sync);
 	}
 }