JS: Fix widget sometimes MemCrash on exit.

This commit is contained in:
Derek Jamison
2024-04-19 18:14:21 -05:00
parent e3cc377b56
commit 17646cab37

View File

@@ -917,9 +917,8 @@ static void widget_remove_view(void* context) {
ComponentArray_it(it, model->component); ComponentArray_it(it, model->component);
while(!ComponentArray_end_p(it)) { while(!ComponentArray_end_p(it)) {
WidgetComponent* component = *ComponentArray_ref(it); WidgetComponent* component = *ComponentArray_ref(it);
if(component->free) { if(component && component->free) {
component->free(component); component->free(component);
component->free = NULL;
} }
ComponentArray_next(it); ComponentArray_next(it);
} }
@@ -1003,6 +1002,7 @@ static void js_widget_destroy(void* inst) {
view_dispatcher_stop(widget->view_dispatcher); view_dispatcher_stop(widget->view_dispatcher);
widget_deinit(widget); widget_deinit(widget);
} }
widget_remove_view(widget); widget_remove_view(widget);
free(widget); free(widget);
} }