mirror of
https://repo.dec05eba.com/gpu-screen-recorder
synced 2026-05-06 23:06:22 +09:00
Correctly combine damage tracking when using multiple sources
This commit is contained in:
@@ -201,8 +201,6 @@ static void usage_header(void) {
|
||||
fflush(stdout);
|
||||
}
|
||||
|
||||
// TODO: Add --list-v4l2-devices option
|
||||
|
||||
static void usage_full(void) {
|
||||
const bool inside_flatpak = getenv("FLATPAK_ID") != NULL;
|
||||
usage_header();
|
||||
|
||||
11
src/main.cpp
11
src/main.cpp
@@ -4270,6 +4270,9 @@ int main(int argc, char **argv) {
|
||||
should_stop_error = false;
|
||||
bool damaged = false;
|
||||
|
||||
if(use_damage_tracking)
|
||||
damaged = gsr_damage_is_damaged(&damage);
|
||||
|
||||
for(VideoSource &video_source : video_sources) {
|
||||
gsr_capture_tick(video_source.capture);
|
||||
|
||||
@@ -4291,11 +4294,9 @@ int main(int argc, char **argv) {
|
||||
video_source.capture_source->window_id = damage_target_window;
|
||||
}
|
||||
|
||||
if(use_damage_tracking)
|
||||
damaged = gsr_damage_is_damaged(&damage);
|
||||
else if(video_source.capture->is_damaged)
|
||||
damaged = video_source.capture->is_damaged(video_source.capture);
|
||||
else
|
||||
if(video_source.capture->is_damaged)
|
||||
damaged |= video_source.capture->is_damaged(video_source.capture);
|
||||
else if(!use_damage_tracking)
|
||||
damaged = true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user