On Mon, 2013-12-30 at 17:49 -0800, Kevin Cernekee wrote: > When the user selects a different authgroup, return NEWGROUP to > libopenconnect to allow it to refresh the form. Different groups may > require different prompts. > > Also, if secondary_username is provided by the server, prepopulate the > form field. > +static gboolean set_initial_authgroup (auth_ui_data *ui_data, struct oc_auth_form *form) > +{ > + struct oc_form_opt *opt; > + char *authgroup_field = AUTHGROUP_FIELD(form); > + > + if (!NEWGROUP_SUPPORTED || ui_data->group_set || authgroup_field) > + return FALSE; Hm, shouldn't that final condition have been "|| !authgroup_field" ? And of course it's form->authgroup_opt now. After fixing that, I still see it dying thus when I change groups: ==4609== Invalid read of size 8 ==4609== at 0x3380816EC0: g_object_notify (gobject.c:1162) ==4609== by 0x3390D09F54: gtk_combo_box_set_active_internal (gtkcombobox.c:4397) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== by 0x337F049627: g_main_context_iterate.isra.24 (gmain.c:3713) ==4609== by 0x337F049A39: g_main_loop_run (gmain.c:3907) ==4609== by 0x3390DAA354: gtk_main (gtkmain.c:1158) ==4609== by 0x405934: main (main.c:1813) ==4609== Address 0xcab74b0 is 512 bytes inside a block of size 584 free'd ==4609== at 0x4A07577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==4609== by 0x337F04EF7E: g_free (gmem.c:197) ==4609== by 0x337F0655CA: g_slice_free1 (gslice.c:1124) ==4609== by 0x33808319C2: g_type_free_instance (gtype.c:1932) ==4609== by 0x3380829EC1: g_signal_emit_valist (gsignal.c:3288) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390D09F45: gtk_combo_box_set_active_internal (gtkcombobox.c:4396) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== ==4609== Invalid read of size 8 ==4609== at 0x3380832585: g_type_check_instance_is_a (gtype.c:3970) ==4609== by 0x3380816EDD: g_object_notify (gobject.c:1162) ==4609== by 0x3390D09F54: gtk_combo_box_set_active_internal (gtkcombobox.c:4397) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== by 0x337F049627: g_main_context_iterate.isra.24 (gmain.c:3713) ==4609== by 0x337F049A39: g_main_loop_run (gmain.c:3907) ==4609== by 0x3390DAA354: gtk_main (gtkmain.c:1158) ==4609== by 0x405934: main (main.c:1813) ==4609== Address 0xcab74b0 is 512 bytes inside a block of size 584 free'd ==4609== at 0x4A07577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==4609== by 0x337F04EF7E: g_free (gmem.c:197) ==4609== by 0x337F0655CA: g_slice_free1 (gslice.c:1124) ==4609== by 0x33808319C2: g_type_free_instance (gtype.c:1932) ==4609== by 0x3380829EC1: g_signal_emit_valist (gsignal.c:3288) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390D09F45: gtk_combo_box_set_active_internal (gtkcombobox.c:4396) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== (nm-openconnect-auth-dialog:4609): GLib-GObject-CRITICAL **: g_object_notify: assertion 'G_IS_OBJECT (object)' failed ==4609== Invalid read of size 8 ==4609== at 0x3390D09F55: gtk_combo_box_set_active_internal (gtkcombobox.c:4398) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== by 0x337F049627: g_main_context_iterate.isra.24 (gmain.c:3713) ==4609== by 0x337F049A39: g_main_loop_run (gmain.c:3907) ==4609== by 0x3390DAA354: gtk_main (gtkmain.c:1158) ==4609== by 0x405934: main (main.c:1813) ==4609== Address 0xcab74e0 is 560 bytes inside a block of size 584 free'd ==4609== at 0x4A07577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==4609== by 0x337F04EF7E: g_free (gmem.c:197) ==4609== by 0x337F0655CA: g_slice_free1 (gslice.c:1124) ==4609== by 0x33808319C2: g_type_free_instance (gtype.c:1932) ==4609== by 0x3380829EC1: g_signal_emit_valist (gsignal.c:3288) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390D09F45: gtk_combo_box_set_active_internal (gtkcombobox.c:4396) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== ==4609== Invalid read of size 4 ==4609== at 0x3390D09F59: gtk_combo_box_set_active_internal (gtkcombobox.c:4398) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== by 0x337F049627: g_main_context_iterate.isra.24 (gmain.c:3713) ==4609== by 0x337F049A39: g_main_loop_run (gmain.c:3907) ==4609== by 0x3390DAA354: gtk_main (gtkmain.c:1158) ==4609== by 0x405934: main (main.c:1813) ==4609== Address 0xc0 is not stack'd, malloc'd or (recently) free'd ==4609== ==4609== ==4609== Process terminating with default action of signal 11 (SIGSEGV) ==4609== Access not within mapped region at address 0xC0 ==4609== at 0x3390D09F59: gtk_combo_box_set_active_internal (gtkcombobox.c:4398) ==4609== by 0x3390D0C5AD: gtk_combo_box_set_active_iter (gtkcombobox.c:4454) ==4609== by 0x3390D0C7F9: gtk_combo_box_menu_activate (gtkcombobox.c:3294) ==4609== by 0x3380812FA8: g_cclosure_marshal_VOID__STRINGv (gmarshal.c:1004) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EA0482: item_activated_cb (gtktreemenu.c:1492) ==4609== by 0x3380810297: g_closure_invoke (gclosure.c:777) ==4609== by 0x338082235C: signal_emit_unlocked_R (gsignal.c:3586) ==4609== by 0x338082A0F1: g_signal_emit_valist (gsignal.c:3330) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDBF4B: gtk_widget_activate (gtkwidget.c:7199) ==4609== by 0x3390DC7EFD: gtk_menu_shell_activate_item (gtkmenushell.c:1391) ==4609== by 0x3390DC824C: gtk_menu_shell_button_release (gtkmenushell.c:805) ==4609== by 0x3390DAB29D: _gtk_marshal_BOOLEAN__BOXEDv (gtkmarshalers.c:130) ==4609== by 0x33808104C6: _g_closure_invoke_va (gclosure.c:840) ==4609== by 0x3380829748: g_signal_emit_valist (gsignal.c:3238) ==4609== by 0x338082A3AE: g_signal_emit (gsignal.c:3386) ==4609== by 0x3390EDCF1B: gtk_widget_event_internal (gtkwidget.c:7168) ==4609== by 0x3390DA956B: propagate_event (gtkmain.c:2391) ==4609== by 0x3390DAAE59: gtk_main_do_event (gtkmain.c:1714) ==4609== by 0x338FC4EED1: gdk_event_source_dispatch (gdkeventsource.c:364) ==4609== by 0x337F0492A5: g_main_context_dispatch (gmain.c:3066) ==4609== by 0x337F049627: g_main_context_iterate.isra.24 (gmain.c:3713) ==4609== by 0x337F049A39: g_main_loop_run (gmain.c:3907) ==4609== by 0x3390DAA354: gtk_main (gtkmain.c:1158) ==4609== by 0x405934: main (main.c:1813) ==4609== If you believe this happened as a result of a stack ==4609== overflow in your program's main thread (unlikely but ==4609== possible), you can try to increase the size of the ==4609== main thread stack using the --main-stacksize= flag. ==4609== The main thread stack size used in this run was 8388608. ==4609== ==4609== HEAP SUMMARY: ==4609== in use at exit: 7,267,446 bytes in 68,875 blocks ==4609== total heap usage: 410,775 allocs, 341,879 frees, 35,653,554 bytes allocated ==4609== ==4609== LEAK SUMMARY: ==4609== definitely lost: 2,079 bytes in 25 blocks ==4609== indirectly lost: 7,319 bytes in 305 blocks ==4609== possibly lost: 68,664 bytes in 1,013 blocks ==4609== still reachable: 7,028,760 bytes in 66,537 blocks ==4609== suppressed: 0 bytes in 0 blocks ==4609== Rerun with --leak-check=full to see details of leaked memory ==4609== ==4609== For counts of detected and suppressed errors, rerun with: -v ==4609== ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 2 from 2) -- dwmw2 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 5745 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/openconnect-devel/attachments/20140219/9ec65f34/attachment-0001.bin>