On Tue, Jul 04, 2006 at 08:20:33PM -0400, Yoandy Rodriguez Martinez wrote: > I'm making a small Gtk application and this function (code sample below ) > keeps doing segfaults when gtk_widget_destroy is called. Any tip??? > > void message_dialog(const gchar * message){ > /* > * Santa ayuda de Gtk > */ > > GtkWidget *dialog; > > /* Create the widgets */ > > dialog = gtk_message_dialog_new (NULL, > GTK_DIALOG_DESTROY_WITH_PARENT, > GTK_MESSAGE_ERROR, > GTK_BUTTONS_CLOSE, > "%s", > message); > > /* Add the label, and show everything we've added to the dialog. */ > gtk_dialog_run(GTK_DIALOG(dialog)); > gtk_widget_destroy(dialog); > } The code is correct, except it makes little sense to pass GTK_DIALOG_DESTROY_WITH_PARENT when parent is NULL and if the dialog can be destroyed by something else while it's running (I suppose it cannot) the return value of gtk_dialog_run() has to be checked for GTK_RESPONSE_NONE. So, I have two tips: 1. Use gdb, at least to get a backtrace. 2. Use valgrind. Maybe you will find it actually crashes elsewhere. If you did use a debugger and are sure it crashes in the gtk_widget_destroy() why you didn't post the backtrace which would reveal where excactly it crashes? Yeti -- Anonyms eat their boogers. _______________________________________________ gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list