ppd_list is not a copy, don't free it.
Both consumers of PpPPDSelectionDialog (PpNewPrinterDialog, PpDetailsDialog) free the PPDList they pass to pp_ppd_selection_dialog_set_ppd_list and they do not pass a copy, so PpPPDSelectionDialog should not free the pointer on dispose. This fixes a racy segfault when closing a PpDetailsDialog after PPD selection (introduced with this series), did not appear with PpNewPrinterDialog for some reason.
This commit is contained in:
parent
b19325167d
commit
a73a095d76
1 changed files with 0 additions and 1 deletions
|
@ -331,7 +331,6 @@ pp_ppd_selection_dialog_dispose (GObject *object)
|
|||
g_clear_pointer (&self->ppd_name, g_free);
|
||||
g_clear_pointer (&self->ppd_display_name, g_free);
|
||||
g_clear_pointer (&self->manufacturer, g_free);
|
||||
g_clear_pointer (&self->list, ppd_list_free);
|
||||
|
||||
G_OBJECT_CLASS (pp_ppd_selection_dialog_parent_class)->dispose (object);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue