obs-studio/plugins
Georges Basile Stavracas Neto ec3e8146b2 pipewire: Properly pass sizes to gs_draw_sprite_subregion
The gs_draw_sprite_subregion() function is used when a cropping
rectangle is received from PipeWire. It is usually used by
compositors to implement window screencast - where a large and
mostly empty frame is sent, the window contents are only a small
part of it, and the crop rectangle tells us that.

Recently the wlroots implementation of portals started to use it
to implement cropping, and it exposed a bug in the PipeWire code
in OBS Studio. The gs_draw_sprite_subregion() function takes a pair
of integers representing position (x, y) and a pair of integers
representing size (width, height). The PipeWire code, however,
passes a second pair of positions (x2, y2) instead of sizes, and
it causes overrendering the crop area.

This bug wasn't hit yet because both GNOME and KDE implementations
always send (0, 0) as position, which practically never trigger
this condition.

Pass only width and height to gs_draw_sprite_subregion(), instead
of adding x and y to them.

Fixes https://github.com/obsproject/obs-studio/issues/4982
2021-07-08 08:32:55 -07:00
..
coreaudio-encoder Update translations from Crowdin 2021-06-11 07:18:15 -07:00
decklink Update translations from Crowdin 2021-06-11 07:18:15 -07:00
enc-amf@9ceb1254c3 Update translations from Crowdin 2021-05-30 20:33:35 +02:00
image-source Update translations from Crowdin 2021-06-11 07:18:15 -07:00
linux-alsa Update translations from Crowdin 2021-06-11 07:18:15 -07:00
linux-capture pipewire: Properly pass sizes to gs_draw_sprite_subregion 2021-07-08 08:32:55 -07:00
linux-jack Update translations from Crowdin 2021-06-11 07:18:15 -07:00
linux-pulseaudio Update translations from Crowdin 2021-06-11 07:18:15 -07:00
linux-v4l2 Update translations from Crowdin 2021-06-11 07:18:15 -07:00
mac-avcapture Update translations from Crowdin 2021-06-11 07:18:15 -07:00
mac-capture mac-capture: Update display names 2021-06-30 01:52:04 -07:00
mac-syphon mac-syphon: Use DrawOpaque as necessary 2021-07-04 10:35:54 -07:00
mac-virtualcam Update translations from Crowdin 2021-06-11 07:18:15 -07:00
mac-vth264 Update translations from Crowdin 2021-06-11 07:18:15 -07:00
obs-browser@f1a61c5a25 Update translations from Crowdin 2021-05-30 20:33:35 +02:00
obs-ffmpeg obs-ffmpeg: Fix comparison type mismatch 2021-07-06 14:08:28 -07:00
obs-filters obs-filters: Fix comparison type mismatch 2021-07-06 14:08:28 -07:00
obs-libfdk Update translations from Crowdin 2021-06-11 07:18:15 -07:00
obs-outputs Update translations from Crowdin 2021-06-11 07:18:15 -07:00
obs-qsv11 obs-qsv11: Update Intel Media SDK to 2021 R1 2021-06-30 01:49:06 -07:00
obs-text Update translations from Crowdin 2021-06-11 07:18:15 -07:00
obs-transitions Update translations from Crowdin 2021-06-11 07:18:15 -07:00
obs-vst@aaa7b7fa32 Update translations from Crowdin 2021-05-30 20:33:35 +02:00
obs-x264 Update translations from Crowdin 2021-06-11 07:18:15 -07:00
oss-audio Update translations from Crowdin 2021-06-11 07:18:15 -07:00
rtmp-services rtmp-services: Fix implicit function declaration 2021-07-02 07:26:37 -07:00
sndio Update translations from Crowdin 2021-06-11 07:18:15 -07:00
text-freetype2 text-freetype2: Add alpha channel property 2021-07-04 12:16:09 -07:00
vlc-video Update translations from Crowdin 2021-06-11 07:18:15 -07:00
win-capture win-capture: Return early in property callbacks if param is null 2021-06-30 01:45:42 -07:00
win-dshow Update translations from Crowdin 2021-06-11 07:18:15 -07:00
win-ivcam Merge pull request #1944 from WizardCM/windows-rc-definition 2020-04-18 18:27:22 -05:00
win-mf Update translations from Crowdin 2021-06-11 07:18:15 -07:00
win-wasapi Update translations from Crowdin 2021-06-11 07:18:15 -07:00
CMakeLists.txt plugins: Set obs-vst as a default requirement 2021-04-09 06:44:53 -07:00