Browse Source

win-capture: Always reset timeout when searching for target display

If the display wasn't found, the timer was not reset, causing the code
to execute on every single tick, stalling the graphics thread and using
excessive CPU.
Richard Stanway 2 years ago
parent
commit
20d4bab77a
1 changed files with 4 additions and 4 deletions
  1. 4 4
      plugins/win-capture/duplicator-monitor-capture.c

+ 4 - 4
plugins/win-capture/duplicator-monitor-capture.c

@@ -526,9 +526,9 @@ static void duplicator_capture_tick(void *data, float seconds)
 									capture->handle);
 						}
 					}
-
-					capture->reset_timeout = 0.0f;
 				}
+
+				capture->reset_timeout = 0.0f;
 			}
 		}
 	} else {
@@ -563,10 +563,10 @@ static void duplicator_capture_tick(void *data, float seconds)
 						capture->duplicator =
 							gs_duplicator_create(
 								dxgi_index);
-
-						capture->reset_timeout = 0.0f;
 					}
 				}
+
+				capture->reset_timeout = 0.0f;
 			}
 		}