diff options
author | wm4 <wm4@nowhere> | 2018-03-08 00:23:12 +0100 |
---|---|---|
committer | Kevin Mitchell <kevmitch@gmail.com> | 2018-03-08 17:12:32 -0800 |
commit | c15af6630f8ea7bc17d6041aec89bca59209814a (patch) | |
tree | 3be0d53413dbfc01ff975ce6f7409e6d5ad08808 /player/playloop.c | |
parent | 2f20168b0b5105566ecb330ea4b83c358e4b4e6d (diff) | |
download | mpv-c15af6630f8ea7bc17d6041aec89bca59209814a.tar.bz2 mpv-c15af6630f8ea7bc17d6041aec89bca59209814a.tar.xz |
vo_vdpau: fix resizing and rotation problems
The s_size() function, whatever it was supposed to do, caused the
surface size to increase indefinitely. Fix by making it always use the
maximum size that was last used, which is less optimal (many surface
recreations when making the window slowly larger), but at least it
works.
The rotation code didn't mark the old surface as invalid when it was
freed, so it could destroy random other surfaces (let's call it dangling
ID).
Also, the required rotation surface size depends on the rotation mode,
so recreate the surfaces on rotation as well.
Diffstat (limited to 'player/playloop.c')
0 files changed, 0 insertions, 0 deletions