Coverage not correct for pixels on shared edges

Added coverage check for the second "friend" triangle.

Components: Vulkan
VK-GL-CTS Issue: 2580

Affects:
dEQP-VK.rasterization.*

Change-Id: If30814ed81fb9b91ace4655c0ba50dfbcff7b37b
diff --git a/framework/common/tcuRasterizationVerifier.cpp b/framework/common/tcuRasterizationVerifier.cpp
index b391532..ab734c7 100644
--- a/framework/common/tcuRasterizationVerifier.cpp
+++ b/framework/common/tcuRasterizationVerifier.cpp
@@ -2344,7 +2344,18 @@
 					bool friendFound = false;
 					for (int friendTriNdx = 0; friendTriNdx < (int)scene.triangles.size(); ++friendTriNdx)
 					{
-						if (friendTriNdx != triNdx && pixelOnlyOnASharedEdge(tcu::IVec2(x, y), scene.triangles[friendTriNdx], viewportSize))
+						if (friendTriNdx == triNdx)
+							continue;
+
+						const CoverageType friendCoverage	= calculateTriangleCoverage(scene.triangles[friendTriNdx].positions[0],
+																						scene.triangles[friendTriNdx].positions[1],
+																						scene.triangles[friendTriNdx].positions[2],
+																						tcu::IVec2(x, y),
+																						viewportSize,
+																						subPixelBits,
+																						multisampled);
+
+						if (friendCoverage != COVERAGE_NONE && pixelOnlyOnASharedEdge(tcu::IVec2(x, y), scene.triangles[friendTriNdx], viewportSize))
 						{
 							friendFound = true;
 							break;