d6c9b377b9
Always call disconnect before emitting signals, to avoid calling it on a freed object if the user decides to unreference it in a signal.