1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-28 18:12:22 +00:00
mpv/video
dudemanguy 80c4aaa2a4 wayland: fix wl_proxy leak
This one is probably not terribly obvious from just the valgrind log,
but a wayland dev explained it to me just a second ago. Whenever mpv
sends events to the screen with wl_display_dispatch, wayland internally
allocates memory to a struct wl_proxy object if a new id is found. Quite
a few more things happen to that proxy object, but eventually mpv stores
the data on the client-side in a wrapper type of struct (struct
wl_data_offer). mpv's data_device_listener keeps track of those proxies
and frees the memory when appropriate. Of course, mpv is constantly
sending events to the screen and does so until the user quits the
player. What happens here is that one final wl_display_dispatch is called
right before the user quits the player and before mpv's
data_device_listener can handle that object. So the result is that you
always have one extra dangling proxy that doesn't get properly freed.
The solution is to just simply call wl_data_offer_destroy before closing
the wl_display to free that final dangling wl_proxy.
2019-09-19 00:00:19 +03:00
..
decode Merge branch 'master' into pr6360 2019-03-11 01:00:27 +02:00
filter vf_vavpp: disable this filter 2019-09-15 17:59:25 +02:00
out wayland: fix wl_proxy leak 2019-09-19 00:00:19 +03:00
csputils.c csputils: Add support for Display P3 primaries 2017-12-14 23:31:09 +02:00
csputils.h csputils: Add support for Display P3 primaries 2017-12-14 23:31:09 +02:00
d3d.c video: rewrite filtering glue code 2018-01-30 03:10:27 -08:00
d3d.h video: move d3d.c out of decode sub directory 2017-12-01 17:58:56 +01:00
fmt-conversion.c vo/gpu: hwdec_vdpau: Support direct mode for 4:4:4 content 2019-07-08 01:11:27 +02:00
fmt-conversion.h video/fmt-conversion, img_format: change license to LGPL 2017-06-18 15:15:07 +02:00
hwdec.c video: rewrite filtering glue code 2018-01-30 03:10:27 -08:00
hwdec.h video: rewrite filtering glue code 2018-01-30 03:10:27 -08:00
image_loader.c image_writer: move convert_image() to player/screenshot.c 2019-09-14 23:02:39 +02:00
image_loader.h x11: load icon differently 2017-07-01 15:56:12 +02:00
image_writer.c image_writer: add webp-compression option 2019-09-14 23:02:39 +02:00
image_writer.h image_writer: add webp-compression option 2019-09-14 23:02:39 +02:00
img_format.c video: remove libavutil PSEUDOPAL stuff 2018-04-03 20:08:15 +03:00
img_format.h vo/gpu: hwdec_vdpau: Support direct mode for 4:4:4 content 2019-07-08 01:11:27 +02:00
mp_image_pool.c mp_image_pool: add helper functions for FFmpeg hw frames pools 2018-01-18 00:59:07 -08:00
mp_image_pool.h mp_image_pool: add helper functions for FFmpeg hw frames pools 2018-01-18 00:59:07 -08:00
mp_image.c mp_image: align stride to multiple of texel size 2019-04-21 23:55:22 +03:00
mp_image.h video: remove internal stereo_out flag 2018-04-29 02:21:32 +03:00
sws_utils.c sws_utils: don't force callers to provide option struct 2018-01-18 00:59:07 -08:00
sws_utils.h sws_utils: don't force callers to provide option struct 2018-01-18 00:59:07 -08:00
vaapi.c vaapi: add option to select a non-default device path 2018-03-30 14:16:07 -07:00
vaapi.h vo_gpu: hwdec_vaapi: Suppress format errors when probing 2019-07-08 01:57:02 +02:00
vdpau_functions.inc
vdpau_mixer.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vdpau_mixer.h video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vdpau.c hwdec: remove unused fields 2017-12-21 19:31:36 +01:00
vdpau.h vd_lavc, vdpau, vaapi: restore emulated API avoidance 2017-12-02 04:53:51 +01:00