Browse Source

win-capture: Update hooked state before unhooked signal

If the get_hooked procedure is called during the unhooked signal
the source would still report that it's hooked because gc->capturing
hasn't been updated yet.
Tom Haffenden 8 months ago
parent
commit
b8f7c77937
1 changed files with 1 additions and 1 deletions
  1. 1 1
      plugins/win-capture/game-capture.c

+ 1 - 1
plugins/win-capture/game-capture.c

@@ -356,6 +356,7 @@ static void stop_capture(struct game_capture *gc)
 
 	// if it was previously capturing, send an unhooked signal
 	if (gc->capturing) {
+		gc->capturing = false;
 		signal_handler_t *sh = obs_source_get_signal_handler(gc->source);
 		calldata_t data = {0};
 		calldata_set_ptr(&data, "source", gc->source);
@@ -370,7 +371,6 @@ static void stop_capture(struct game_capture *gc)
 	gc->copy_texture = NULL;
 	gc->wait_for_target_startup = false;
 	gc->active = false;
-	gc->capturing = false;
 
 	if (gc->retrying)
 		gc->retrying--;