Skip to content
  • Beniamino Galvani's avatar
    core: fix failed assertion when D-Bus service is already taken · f1b4eb95
    Beniamino Galvani authored
    When exiting after an error we must set the quitting flag in
    nm-exported-object.c because during program destruction there can be
    still exported objects which get disposed.
    
    Fixes the following assertion:
    
     NetworkManager[14241]: (nm-exported-object.c:826):nm_exported_object_dispose: code should not be reached
    
     Process terminating with default action of signal 5 (SIGTRAP)
        at 0x7ACFD3B: _g_log_abort (gmessages.c:315)
        by 0x7ACFD3B: g_logv (gmessages.c:1041)
        by 0x7ACFEAE: g_log (gmessages.c:1079)
        by 0x7AD0196: g_warn_message (gmessages.c:1112)
        by 0x20F5B0:  nm_exported_object_dispose (nm-exported-object.c:826)
        by 0x316FC4:  dispose (nm-settings.c:2222)
        by 0x7841A5B: g_object_unref (gobject.c:3137)
        by 0x2330F3:  dispose (nm-manager.c:5249)
        by 0x7841A5B: g_object_unref (gobject.c:3137)
        by 0x23C511:  _nm_singleton_instance_destroy (NetworkManagerUtils.c:174)
        by 0x400FBE6: _dl_fini (in /usr/lib64/ld-2.21.so)
        by 0x8009647: __run_exit_handlers (in /usr/lib64/libc-2.21.so)
        by 0x8009694: exit (in /usr/lib64/libc-2.21.so)
    f1b4eb95