Commit f54301b6 authored by David Fuhrmann's avatar David Fuhrmann

macosx: avoid zombie when updating extensions dialog

CFBridgingRelease was used in the wrong place.
All view objects should only be retained by the window (and in this
situation by the grid view dicts as well), thus they is no need to
additionally retain them for the p_sys_intf pointer.
parent f2f58c1b
......@@ -382,13 +382,13 @@ static int extensionDialogCallback(vlc_object_t *p_this, const char *psz_variabl
continue; /* Some widgets may be NULL@this point */
BOOL shouldDestroy = widget->b_kill;
NSView *control = CFBridgingRelease(widget->p_sys_intf);
NSView *control = (__bridge NSView *)widget->p_sys_intf;
BOOL update = widget->b_update;
if (!control && !shouldDestroy) {
control = createControlFromWidget(widget, self);
updateControlFromWidget(control, widget, self);
widget->p_sys_intf = (void *)CFBridgingRetain(control);
widget->p_sys_intf = (__bridge void *)control;
update = YES; // Force update and repositionning
[control setHidden:widget->b_hide];
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment