SF: fix wouldPresentEarly when allow_n_vsyncs_in_targeter=true

wouldPresentEarly should return true if the previous frame would
not cause a backpressure.

Bug: 308858993
Test: SF unit tests
Flag: com.android.graphics.surfaceflinger.flags.allow_n_vsyncs_in_targeter
Change-Id: I0035145e06f2782cc190e329b542c2f4bbd6f0f1
diff --git a/services/surfaceflinger/Scheduler/src/FrameTargeter.cpp b/services/surfaceflinger/Scheduler/src/FrameTargeter.cpp
index 21f5949..8adf2a6 100644
--- a/services/surfaceflinger/Scheduler/src/FrameTargeter.cpp
+++ b/services/surfaceflinger/Scheduler/src/FrameTargeter.cpp
@@ -61,8 +61,10 @@
 
     const auto [wouldBackpressure, fence] =
             expectedSignaledPresentFence(vsyncPeriod, minFramePeriod);
-    return wouldBackpressure && fence.fenceTime->isValid() &&
-            fence.fenceTime->getSignalTime() != Fence::SIGNAL_TIME_PENDING;
+
+    return !wouldBackpressure ||
+            (fence.fenceTime->isValid() &&
+             fence.fenceTime->getSignalTime() != Fence::SIGNAL_TIME_PENDING);
 }
 
 const FenceTimePtr& FrameTarget::presentFenceForPreviousFrame() const {