D3D11: Don't yeild after a successful call to GetData during glFinish.

ScheduleYield was always called after GetData regardless of it's result.  This
meant that we would successfully get the data but still sleep the thread

BUG=667979

Change-Id: Iecba0ae5cacef64a1080bbd89ce352bc4f281359
Reviewed-on: https://chromium-review.googlesource.com/437636
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
index 5f28cd4..1875c80 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
@@ -1142,8 +1142,11 @@
                              result);
         }
 
-        // Keep polling, but allow other threads to do something useful first
-        ScheduleYield();
+        if (result == S_FALSE)
+        {
+            // Keep polling, but allow other threads to do something useful first
+            ScheduleYield();
+        }
 
         if (testDeviceLost())
         {