mirror of
https://github.com/mpv-player/mpv.git
synced 2026-10-29 15:11:09 +08: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 #4031
This commit is contained in:
@@ -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];
|
||||
|
||||
Reference in New Issue
Block a user