1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-24 12:22:25 +00:00

cocoa: don't init displaylink on reconfig

everytime we switched to a new video file a new displaylink was
initialised and started, but the old one was not stopped and released
beforehand. this lead to several displaylink callback calls per swap,
depending on how many files were switched beforehand. moving the
displaylink init call to the cocoa init functions will ever only init
one displaylink.

Fixes 
This commit is contained in:
Akemi 2017-01-18 17:22:32 +01:00
parent fe02e5023c
commit 9490b628c5

View File

@ -350,6 +350,7 @@ void vo_cocoa_init(struct vo *vo)
pthread_cond_init(&s->sync_wakeup, NULL);
vo->cocoa = s;
vo_cocoa_update_screen_info(vo);
vo_cocoa_init_displaylink(vo);
cocoa_init_light_sensor(vo);
cocoa_add_screen_reconfiguration_observer(vo);
if (!s->embedded) {
@ -637,7 +638,6 @@ int vo_cocoa_config_window(struct vo *vo)
struct mp_vo_opts *opts = vo->opts;
run_on_main_thread(vo, ^{
vo_cocoa_init_displaylink(vo);
vo_cocoa_update_screen_fps(vo);
NSRect r = [s->current_screen frame];